1 00:00:00,000 --> 00:00:02,830 >> ZVUČNIK 1: Idemo napisati program koji traži od korisnika za pozitivno 2 00:00:02,830 --> 00:00:05,950 cijeli broj n, a zatim ispisuje zbroj svih brojeva 3 00:00:05,950 --> 00:00:07,980 između 1 i n. 4 00:00:07,980 --> 00:00:10,580 Pa, ovdje imamo glavno, što sam već napisana unaprijed. 5 00:00:10,580 --> 00:00:13,520 I primijetiti na vrhu Glavni, sam proglasi int n. 6 00:00:13,520 --> 00:00:16,079 >> I onda, unutar jednog učiniti dok petlje, prvo ispisati 7 00:00:16,079 --> 00:00:17,530 pozitivni cijeli broj, molim te. 8 00:00:17,530 --> 00:00:21,070 Tada sam nastaviti dobiti broj od Korisnik s CS50 knjižnice get 9 00:00:21,070 --> 00:00:22,070 int funkciju. 10 00:00:22,070 --> 00:00:26,410 A onda je u mom stanju, dok ovdje, ja bi bili sigurni da je n veći od ili 11 00:00:26,410 --> 00:00:30,480 jednak 1. prije nego što sam zapravo postupiti učiniti nešto s tom vrijednošću. 12 00:00:30,480 --> 00:00:31,520 >> Što da učinim? 13 00:00:31,520 --> 00:00:34,690 Pa, ja nazivam funkciju da idem nazvati Sigma, predstavnik 14 00:00:34,690 --> 00:00:37,700 kapitala sigma da možete imati Podsjetio je iz matematike klase koje 15 00:00:37,700 --> 00:00:40,860 ukazuje na to da želite da zaključimo nešto iz jedne vrijednosti u drugu. 16 00:00:40,860 --> 00:00:44,540 I bez obzira na tu funkciju vraća kao njegova povratka vrijednost, idem za pohranu 17 00:00:44,540 --> 00:00:46,500 u varijablu odgovor. 18 00:00:46,500 --> 00:00:50,280 >> Konačno, u mojoj posljednjoj liniji u glavnom, ja sam će ispisati ono što je odgovor. 19 00:00:50,280 --> 00:00:52,840 Naravno, još nismo provodi ova funkcija sigma. 20 00:00:52,840 --> 00:00:54,590 Pa kako ćemo ići radi o tome? 21 00:00:54,590 --> 00:00:58,040 >> Pa, na dnu moje datoteke, sam će se nastaviti na proglasiti funkciju 22 00:00:58,040 --> 00:00:59,450 koja vraća int. 23 00:00:59,450 --> 00:01:01,630 A ja ću nazvati da je funkcija sigma. 24 00:01:01,630 --> 00:01:06,340 I ja ću navesti da kao ulaz da je funkcija prihvaća i int. 25 00:01:06,340 --> 00:01:09,800 I ja ću ga nazvati samo, da se različiti, m umjesto n. 26 00:01:09,800 --> 00:01:12,120 No, mogli smo se zove većina ništa što bismo željeli. 27 00:01:12,120 --> 00:01:14,930 >> Unutar ovoga tijela funkcije Ja sam će nastaviti koristiti upoznati 28 00:01:14,930 --> 00:01:16,420 izgradnju, naime petlju. 29 00:01:16,420 --> 00:01:19,010 Ali isto tako ću učiniti malo zdravog razuma provjeru kako bi bili sigurni da 30 00:01:19,010 --> 00:01:22,340 korisnik ne daju mi ​​s brojnim da nisam očekivao. 31 00:01:22,340 --> 00:01:28,010 Konkretno, ja ću to učiniti, ako je m manji od 1, a ponekad proizvoljno, 32 00:01:28,010 --> 00:01:31,280 Ja sam jednostavno će se vratiti 0 ukoliko broj nije pozitivan 33 00:01:31,280 --> 00:01:32,800 cijeli broj kao ja očekujem. 34 00:01:32,800 --> 00:01:36,920 >> Onda ću proglasiti varijablu zove zbroj i inicijalizirati na 0. 35 00:01:36,920 --> 00:01:40,810 To će u konačnici pohraniti zbroj svi brojevi između 1 i m. 36 00:01:40,810 --> 00:01:43,550 I onda ću koristiti upoznati naprijed petlje konstrukt. 37 00:01:43,550 --> 00:01:50,272 Za int i dobiva 1, i manja je od ili jednak m, i plus plus. 38 00:01:50,272 --> 00:01:54,010 A onda, u tijelu to loop, ja jednostavno ću učiniti sumu 39 00:01:54,010 --> 00:01:56,350 jednaka zbroju plus sam. 40 00:01:56,350 --> 00:02:01,900 Ili, jednostavnije, suma plus jednako ja, čime se postiže isti rezultat. 41 00:02:01,900 --> 00:02:04,810 >> I onda na kraju, moram se vratiti iznos koji sam izračunao. 42 00:02:04,810 --> 00:02:07,640 Tako sam dodati u povratnom svote. 43 00:02:07,640 --> 00:02:08,560 >> Sada nisam još gotov. 44 00:02:08,560 --> 00:02:11,360 Moram naučiti C da je taj funkcija zapravo postoji. 45 00:02:11,360 --> 00:02:14,400 I tako na vrhu moje datoteke idem proglasiti ono što smo pozvani funkcija 46 00:02:14,400 --> 00:02:18,270 prototip, identičan potpis da sam se pri definiranju funkcije 47 00:02:18,270 --> 00:02:19,250 Prije trenutak. 48 00:02:19,250 --> 00:02:22,450 >> Naime, odmah iznad glavne, Idem tipa int 49 00:02:22,450 --> 00:02:26,080 sigma, int m, zarez. 50 00:02:26,080 --> 00:02:29,240 Ne provedbi funkciju opet, jednostavno ga proglašenja. 51 00:02:29,240 --> 00:02:32,800 Ako ja sada spasiti, sastaviti i pokrenuti ovaj Program, idemo vidjeti što ću dobiti. 52 00:02:32,800 --> 00:02:37,460 Provjerite sigma 0 dot slash sigma 0. 53 00:02:37,460 --> 00:02:41,050 A sada idemo dati pozitivan cijeli broj kao i 2, koji se trebao mi dati 54 00:02:41,050 --> 00:02:45,920 tri, jer se između vrijednosti 1 i 2 su 1 plus 2 jednako 3. 55 00:02:45,920 --> 00:02:47,300 I doista, to je ono što ću dobiti. 56 00:02:47,300 --> 00:02:49,940 >> Ponovimo još jednom pokrenuti, to Vrijeme sa, recimo, tri. 57 00:02:49,940 --> 00:02:53,470 Tako sam trebao dobiti 1 plus 2 plus 3 treba mi dati šest. 58 00:02:53,470 --> 00:02:54,740 I doista, ja bi 6. 59 00:02:54,740 --> 00:02:57,380 >> I pokušajmo posljednju vrijednost, kažu 50. 60 00:02:57,380 --> 00:03:01,160 A 1275 je naš odgovor. 61 00:03:01,160 --> 00:03:02,253