Spreker 1: Kom ons skryf 'n program wat vra die gebruiker om 'n positiewe integer, n, en dan druk uit die som van al die getalle tussen 1 en n. Wel, hier het ons hoof, wat ek reeds vooruit geskryf. En kennis van hier aan die bokant van hoof, verklaar ek 'n int n. Ek het toe, binnekant van 'n doen terwyl lus, eerste druk positiewe heelgetal, asseblief. Toe het ek gaan 'n heelgetal te kry van die gebruiker met die CS50 biblioteek se get int funksie. En dan in my terwyl toestand hier, ek maak seker dat n groter as of gelyk aan 1 voordat ek eintlik gaan iets te doen met daardie waarde. Wat doen ek nou? Wel, ek noem 'n funksie wat ek gaan Sigma, verteenwoordiger van die te noem kapitaal Sigma wat jy mag hê onthou van wiskunde klasse wat dui daarop dat jy iets op te som van die een waarde aan 'n ander. En wat daardie funksie opgawes sy terugkeer waarde, ek gaan te stoor in 'n veranderlike genoem antwoord. Ten slotte, in my laaste lyn in die belangrikste, ek is gaan om uit te druk wat antwoord is. Natuurlik, ons het nog nie geïmplementeer nie hierdie funksie Sigma. So, hoe ons te werk gaan om dit te doen? Wel, aan die onderkant van my lêer, ek is gaan om voort te gaan 'n funksie te verklaar wat gee 'n int. En ek gaan om te bel daardie funksie Sigma. En ek gaan om dit te spesifiseer as insette daardie funksie aanvaar ook 'n int. En ek sal dit noem net te wees, duidelike, m in plaas van N. Maar ons kon genoem het dit die die meeste enigiets wat ons wil. Binnekant van die liggaam van hierdie funksie Ek is gaan om voort te gaan 'n bekende te gebruik bou, naamlik 'n lus. Maar ek gaan ook 'n bietjie van gesonde verstand te doen nagaan om seker te maak dat die gebruiker nie gee my 'n aantal dat ek nie verwag het nie. In die besonder, ek gaan om te doen indien m minder as 1 en ietwat arbitrêr, Ek is net gaan om terug te keer as 0 die nommer is nie 'n positiewe heelgetal as ek verwag. Dan gaan ek 'n veranderlike te verklaar genoem som en inisialiseer tot 0. Dit sal uiteindelik slaan die som van al die getalle tussen 1 en m. En dan gaan ek 'n bekende te gebruik vorentoe lus bou. Vir int i kry 1, i is minder as of gelyk aan m, i plus plus. En dan, in die liggaam van hierdie lus, ek eenvoudig gaan som te doen gelyk som plus i. Of meer eenvoudig, som plus gelyk i, wat bereik dieselfde resultaat. En dan laastens, ek het om terug te keer Die som wat ek bereken. So ek voeg in ruil som. Nou is ek nog nie gedoen nie. Ek moet C om te leer dat hierdie funksie bestaan ​​eintlik. En so bo-op my lêer ek gaan om te verklaar wat ons 'n funksie het genoem prototipe, identies aan die handtekening wat ek gebruik wanneer die definisie van die funksie 'n oomblik gelede. Spesifiek, net bokant hoof, Ek gaan int te tik Sigma, int m, kommapunt. Implementeer nie die funksie weer, net verklaar dat dit. As ek nou spaar, saamstel, en die uitvoering van hierdie program, laat ons sien wat ek kry. Maak Sigma 0 dot streep Sigma 0. En nou, laat ons 'n positiewe heelgetal soos 2, wat moet ek gee drie, omdat die waardes tussen 1 en 2 is 1 plus 2 is gelyk aan 3. En inderdaad, dit is wat ek kry. Kom ons loop dit weer, hierdie tyd saam met, sê, 3. So ek moet kry 1 plus 2 plus 3 moet gee my 6. En inderdaad, kry ek 6. En laat ons probeer om 'n laaste waarde, sê 50. En 1275 is ons antwoord.