1 00:00:00,000 --> 00:00:02,830 >> Sprecher 1: Lassen Sie uns ein Programm schreiben, dass fordert den Benutzer für eine positive 2 00:00:02,830 --> 00:00:05,950 ganze Zahl, n, und druckt dann die Summe aller Zahlen 3 00:00:05,950 --> 00:00:07,980 zwischen 1 und n ist. 4 00:00:07,980 --> 00:00:10,580 Nun, hier haben wir Haupt, was ich habe schon im Voraus geschrieben. 5 00:00:10,580 --> 00:00:13,520 Und merkt hier an der Spitze der Haupt erkläre ich einen int n. 6 00:00:13,520 --> 00:00:16,079 >> Ich habe dann, innerhalb eines Do während Schleife ersten ausdrucken 7 00:00:16,079 --> 00:00:17,530 positive ganze Zahl, bitte. 8 00:00:17,530 --> 00:00:21,070 Dann gehe ich auf eine ganze Zahl von bekommen der Benutzer mit dem CS50 Bibliothek get 9 00:00:21,070 --> 00:00:22,070 int-Funktion. 10 00:00:22,070 --> 00:00:26,410 Und dann hier in meinem Zustand, während ich stellen Sie sicher, dass n größer als oder ist 11 00:00:26,410 --> 00:00:30,480 gleich 1 ist, bevor ich tatsächlich gehen etwas mit diesem Wert zu tun. 12 00:00:30,480 --> 00:00:31,520 >> Was muss ich als nächstes tun? 13 00:00:31,520 --> 00:00:34,690 Nun, eine Funktion, die ich nennen werde ich sigma, rufen Vertreter der 14 00:00:34,690 --> 00:00:37,700 Hauptstadt Sigma, die Sie haben von Mathematikunterricht erinnerte daran, dass 15 00:00:37,700 --> 00:00:40,860 zeigt an, dass man etwas zusammenfassen wollen von einem Wert zu einem anderen. 16 00:00:40,860 --> 00:00:44,540 Und was auch immer, dass die Funktion liefert als Rückgabewert, ich werde zu speichern 17 00:00:44,540 --> 00:00:46,500 in einer Variablen namens Antwort. 18 00:00:46,500 --> 00:00:50,280 >> Schließlich, in meinem letzten Zeile in Haupt, ich bin Drucklegung, was Antwort ist. 19 00:00:50,280 --> 00:00:52,840 Natürlich haben wir noch nicht umgesetzt Diese Funktion Sigma. 20 00:00:52,840 --> 00:00:54,590 So, wie wir zu tun, dass gehen? 21 00:00:54,590 --> 00:00:58,040 >> Nun, an der Unterseite der meine Datei, ich bin los zu gehen, um eine Funktion zu deklarieren 22 00:00:58,040 --> 00:00:59,450 dass ein int zurückgibt. 23 00:00:59,450 --> 00:01:01,630 Und ich werde rufen Funktion, dass Sigma. 24 00:01:01,630 --> 00:01:06,340 Und ich werde das als Eingabe angeben diese Funktion übernimmt auch einen int. 25 00:01:06,340 --> 00:01:09,800 Und ich werde sie einfach anrufen, um sein unterschiedliche, m statt n. 26 00:01:09,800 --> 00:01:12,120 Aber wir konnten es die genannt haben die meisten alles, was wir möchten. 27 00:01:12,120 --> 00:01:14,930 >> Im Inneren des Körpers dieser Funktion bin ich gehen, um eine vertraute gehen zu bedienen 28 00:01:14,930 --> 00:01:16,420 Konstrukt, nämlich eine Schleife. 29 00:01:16,420 --> 00:01:19,010 Aber ich bin auch ein bisschen Vernunft zu tun Überprüfung, um sicherzustellen, dass die 30 00:01:19,010 --> 00:01:22,340 Benutzer nicht geben mir eine Reihe dass ich nicht erwartet. 31 00:01:22,340 --> 00:01:28,010 Insbesondere werde ich tun, wenn m weniger als 1, und etwas willkürlich, 32 00:01:28,010 --> 00:01:31,280 Ich werde einfach 0 zurück, wenn die Anzahl ist nicht eine positive 33 00:01:31,280 --> 00:01:32,800 Integer als ich erwarte. 34 00:01:32,800 --> 00:01:36,920 >> Dann werde ich eine Variable deklarieren genannte Summe und initialisieren Sie sie auf 0 gesetzt. 35 00:01:36,920 --> 00:01:40,810 Dies wird letztlich zu speichern die Summe der alle Zahlen zwischen 1 und m. 36 00:01:40,810 --> 00:01:43,550 Und dann werde ich eine vertraute verwenden Vorwärtsschleifenkonstrukt. 37 00:01:43,550 --> 00:01:50,272 Für int i erhält 1, kleiner als i oder gleich m, i plus plus. 38 00:01:50,272 --> 00:01:54,010 Und dann innerhalb des Körpers diese Schleife, ich bin einfach da, um Summe zu tun 39 00:01:54,010 --> 00:01:56,350 gleich Summe plus i. 40 00:01:56,350 --> 00:02:01,900 Oder, noch einfacher, gleich Summe zuzüglich i, die dasselbe Ergebnis erzielt. 41 00:02:01,900 --> 00:02:04,810 >> Und dann endlich, ich muss zurück die Summe, die ich berechnet. 42 00:02:04,810 --> 00:02:07,640 So füge ich im Gegenzug Summe. 43 00:02:07,640 --> 00:02:08,560 >> Jetzt bin ich noch nicht fertig. 44 00:02:08,560 --> 00:02:11,360 Ich muss C lehren, dass diese Funktion tatsächlich existiert. 45 00:02:11,360 --> 00:02:14,400 Und so oben auf meiner Datei werde ich erklären, was wir haben eine Funktion namens 46 00:02:14,400 --> 00:02:18,270 Prototyp, identisch mit der Unterschrift dass ich bei der Definition der Funktion 47 00:02:18,270 --> 00:02:19,250 vor einem Augenblick. 48 00:02:19,250 --> 00:02:22,450 >> Genauer gesagt, gerade über Haupt-, Ich werde den Typ int 49 00:02:22,450 --> 00:02:26,080 Sigma, int m, Semikolon. 50 00:02:26,080 --> 00:02:29,240 Nicht die Umsetzung der Funktion wieder, einfach deklarieren. 51 00:02:29,240 --> 00:02:32,800 Wenn ich jetzt speichern, kompilieren und laufen diese Programm, mal sehen, was ich bekomme. 52 00:02:32,800 --> 00:02:37,460 Machen Sigma 0 slash dot Sigma-0. 53 00:02:37,460 --> 00:02:41,050 Und nun lassen Sie uns eine positive ganze Zahl wie zwei, die mir geben sollte 54 00:02:41,050 --> 00:02:45,920 drei, da die Werte zwischen 1 und 2 sind 1 und 2 gleich 3 ist. 55 00:02:45,920 --> 00:02:47,300 Und in der Tat ist das, was ich bekomme. 56 00:02:47,300 --> 00:02:49,940 >> Laufen wir es wieder, dieses Zeit mit, sagen wir, drei. 57 00:02:49,940 --> 00:02:53,470 Also sollte ich 1 plus 2 plus erhalten 3 sollte mir 6. 58 00:02:53,470 --> 00:02:54,740 Und in der Tat, ich habe erhalten 6. 59 00:02:54,740 --> 00:02:57,380 >> Und lassen Sie uns versuchen, einen letzten Wert, sagen 50. 60 00:02:57,380 --> 00:03:01,160 Und 1275 ist unsere Antwort. 61 00:03:01,160 --> 00:03:02,253