1 00:00:00,000 --> 00:00:02,830 >> SPEAKER 1: Pieņemsim uzrakstīt programmu, kas liek lietotājam par pozitīvu 2 00:00:02,830 --> 00:00:05,950 skaitlis, n, un pēc tam izdrukā visu skaitļu summa 3 00:00:05,950 --> 00:00:07,980 starp 1 un n. 4 00:00:07,980 --> 00:00:10,580 Nu, šeit mums ir galvenais, ko es esmu jau rakstīts iepriekš. 5 00:00:10,580 --> 00:00:13,520 Un paziņojums šeit augšpusē Galvenais, es apliecinu, int n. 6 00:00:13,520 --> 00:00:16,079 >> Tad es, iekšpusē darīt, kamēr cilpa, vispirms izdrukāt 7 00:00:16,079 --> 00:00:17,530 pozitīvs skaitlis, lūdzu. 8 00:00:17,530 --> 00:00:21,070 Tad es turpinu saņemt skaitlim no lietotājs ar CS50 bibliotēkas get 9 00:00:21,070 --> 00:00:22,070 int funkcija. 10 00:00:22,070 --> 00:00:26,410 Un tad manā kamēr stāvoklī šeit, es pārliecināties, ka n ir lielāks par vai 11 00:00:26,410 --> 00:00:30,480 ir vienāds ar 1, pirms es tiešām turpināt kaut ko darīt ar šo vērtību. 12 00:00:30,480 --> 00:00:31,520 >> Ko man darīt tālāk? 13 00:00:31,520 --> 00:00:34,690 Nu, es zvanu funkciju, kas es esmu, zvanīt sigma, kas pārstāv 14 00:00:34,690 --> 00:00:37,700 kapitāls sigma ka Jums varētu būt Jāatgādina no matemātikas klasēs, kas 15 00:00:37,700 --> 00:00:40,860 norāda, ka jūs vēlaties, lai apkopotu kaut no vienas vērtības uz citu. 16 00:00:40,860 --> 00:00:44,540 Un neatkarīgi no šo funkciju atgriežas kā tā atgriešanās vērtību, es esmu gatavojas glabāt 17 00:00:44,540 --> 00:00:46,500 ar mainīgo sauc atbildi. 18 00:00:46,500 --> 00:00:50,280 >> Visbeidzot, manā pēdējā rindā galvenais, es esmu gatavojas drukāt, ko atbilde ir. 19 00:00:50,280 --> 00:00:52,840 Protams, mums vēl nav īstenoti šī funkcija sigma. 20 00:00:52,840 --> 00:00:54,590 Tātad, kā mēs iet par darot, ka? 21 00:00:54,590 --> 00:00:58,040 >> Nu, apakšā manu failu, es esmu gatavojas turpināt deklarēt funkciju 22 00:00:58,040 --> 00:00:59,450 kas atgriež int. 23 00:00:59,450 --> 00:01:01,630 Un es esmu gatavojas aicināt šī funkcija sigma. 24 00:01:01,630 --> 00:01:06,340 Un es esmu gatavojas, lai norādītu, ka ieguldījumu šī funkcija pieņem arī int. 25 00:01:06,340 --> 00:01:09,800 Un es aicinu to tikai, lai būtu atšķirīgi, m vietā n. 26 00:01:09,800 --> 00:01:12,120 Bet mēs varētu būt to sauca lielākā daļa kaut ko mēs gribētu. 27 00:01:12,120 --> 00:01:14,930 >> Iekšpusē ķermeņa šo funkciju es esmu gatavojas turpināt izmantot pazīstami 28 00:01:14,930 --> 00:01:16,420 būvēt, proti cilpu. 29 00:01:16,420 --> 00:01:19,010 Bet es esmu arī gatavojas to darīt mazliet veselība pārbaudes, lai pārliecinātos, ka 30 00:01:19,010 --> 00:01:22,340 Lietotājs nenodrošina man ar vairākiem ka es neesmu gaidījis. 31 00:01:22,340 --> 00:01:28,010 Jo īpaši, es esmu gatavojas darīt, ja m ir mazāka par 1, un nedaudz patvaļīgi, 32 00:01:28,010 --> 00:01:31,280 Es esmu tikai gatavojas atgriezties 0, ja skaits nav pozitīvs 33 00:01:31,280 --> 00:01:32,800 vesels kā es gaidīt. 34 00:01:32,800 --> 00:01:36,920 >> Tad es esmu gatavojas deklarēt mainīgo sauc summa un sāktu to uz 0. 35 00:01:36,920 --> 00:01:40,810 Tas galu galā saglabāt tādu summu visiem numuriem starp 1 un m. 36 00:01:40,810 --> 00:01:43,550 Un tad es esmu gatavojas izmantot pazīstami priekšu cilpa būvēt. 37 00:01:43,550 --> 00:01:50,272 Int i saņem 1, i ir mazāks nekā vai vienāds ar m, i plus plus. 38 00:01:50,272 --> 00:01:54,010 Un pēc tam, kas organismā tas cilpa, es esmu tikai gatavojas darīt summu 39 00:01:54,010 --> 00:01:56,350 vienāda summa plus i. 40 00:01:56,350 --> 00:02:01,900 Vai, vienkārši, summa plus vienāds i, kas sasniedz to pašu rezultātu. 41 00:02:01,900 --> 00:02:04,810 >> Un tad visbeidzot, man ir nepieciešams, lai atgrieztos summa, ko es esmu aprēķināts. 42 00:02:04,810 --> 00:02:07,640 Tāpēc es pievienot atgriešanās summu. 43 00:02:07,640 --> 00:02:08,560 >> Tagad es neesmu darīts vēl. 44 00:02:08,560 --> 00:02:11,360 Man vajag, lai mācītu C, ka šis funkcija faktiski pastāv. 45 00:02:11,360 --> 00:02:14,400 Un tā atop manu failu es esmu gatavojas pasludināt tas, ko mēs esam sauc funkciju 46 00:02:14,400 --> 00:02:18,270 prototips ir identisks ar parakstu ka es izmantoti, nosakot funkciju 47 00:02:18,270 --> 00:02:19,250 pirms brīža. 48 00:02:19,250 --> 00:02:22,450 >> Proti, tieši virs galvenās, Es esmu gatavojas rakstīt int 49 00:02:22,450 --> 00:02:26,080 sigma, int m, semikols. 50 00:02:26,080 --> 00:02:29,240 Neīsteno funkciju atkal, vienkārši pasludinot to. 51 00:02:29,240 --> 00:02:32,800 Ja es tagad saglabāt, apkopot un palaist šo programma, pieņemsim redzēt, kas man. 52 00:02:32,800 --> 00:02:37,460 Padarīt sigma 0 dot slash sigma 0. 53 00:02:37,460 --> 00:02:41,050 Un tagad pieņemsim sniegtu pozitīvu skaitli piemēram, 2, kas dod man 54 00:02:41,050 --> 00:02:45,920 trīs, jo vērtības starp 1 un 2 ir 1 plus 2 ir vienāds ar 3. 55 00:02:45,920 --> 00:02:47,300 Un, protams, tas, ko man. 56 00:02:47,300 --> 00:02:49,940 >> Pieņemsim palaist vēlreiz, šis laiks ar, teiksim, 3. 57 00:02:49,940 --> 00:02:53,470 Tāpēc man vajadzētu saņemt 1 plus 2 plus 3 vajadzētu man 6. 58 00:02:53,470 --> 00:02:54,740 Un, protams, man nokļūt 6. 59 00:02:54,740 --> 00:02:57,380 >> Un pamēģināsim vienu pēdējo vērtību, teiksim 50. 60 00:02:57,380 --> 00:03:01,160 Un 1275 ir mūsu atbilde. 61 00:03:01,160 --> 00:03:02,253