SIARADWR 1: Dewch i ysgrifennu rhaglen sy'n annog y defnyddiwr i gael cadarnhaol cyfanrif, n, ac yna yn argraffu allan y swm o holl rifau rhwng 1 a n. Wel, dyma ni yn brif, ac yr wyf i wedi ysgrifenedig eisoes mewn llaw. Ac yn sylwi yma ar ben brif wyf yn datgan, yn int n. Yna, tu mewn tra do dolen, yn gyntaf argraffu cyfanrif positif, os gwelwch yn dda. Yna mi symud ymlaen i gael cyfanrif o i'r defnyddiwr get llyfrgell CS50 yn int swyddogaeth. Ac yna yn fy nghyflwr tra yma, yr wyf yn gwneud yn siŵr bod n yn fwy na neu'n gyfartal i 1 cyn i mi mewn gwirionedd yn symud ymlaen i wneud rhywbeth gyda gwerth hwnnw. Beth ddylwn i ei wneud nesaf? Wel, yr wyf yn galw swyddogaeth yr wyf i'n mynd i alw sigma, cynrychiolydd y sigma cyfalaf sydd gennych alw'n ôl o dosbarthiadau mathemateg a yn dangos eich bod am i grynhoi rhywbeth o un gwerth i un arall. A beth bynnag y ffurflenni swyddogaeth fel ei werth yn ôl, dwi'n mynd i storio mewn newidyn a elwir yn ateb. Yn olaf, yn fy llinell olaf yn y prif, rwy'n mynd i argraffu beth ateb. Wrth gwrs, nid ydym wedi rhoi ar waith eto hwn sigma swyddogaeth. Felly, sut rydym yn mynd ati i wneud hynny? Wel, ar waelod fy ffeil, rwy'n mynd i symud ymlaen i ddatgan swyddogaeth sy'n dychwelyd yn int. Ac yr wyf i'n mynd i alw y sigma swyddogaeth. Ac yr wyf i'n mynd i bennu bod fel mewnbwn swyddogaeth honno yn derbyn int hefyd. A byddaf yn galw 'i jyst, i fod yn benodol, m yn hytrach na n. Ond gallem fod wedi ei alw y y rhan fwyaf o unrhyw beth yr hoffem. Tu mewn i'r corff swyddogaeth hon rwy'n mynd i symud ymlaen i ddefnyddio cyfarwydd adeiladu, sef dolen. Ond rwyf hefyd i'n mynd i wneud ychydig o bwyll gwirio i wneud yn siŵr bod y Nid yw'r defnyddiwr yn rhoi i mi gyda nifer nad wyf i'n disgwyl. Yn benodol, yr wyf i'n mynd i wneud os m yn llai nag 1 ac, braidd yn fympwyol, Rydw i'n syml yn mynd i ddychwelyd 0 os nad yw'r rhif yn gadarnhaol cyfanrif fel yr wyf yn ei ddisgwyl. Yna mi i'n mynd i ddatgan newidyn a elwir yn swm ac yn ymgychwyn i 0. Bydd hyn yn y pen draw storio'r swm o pob un o'r rhifau rhwng 1 a m. Ac yna yr wyf i'n mynd i ddefnyddio cyfarwydd lluniad dolen ymlaen. Ar gyfer int i yn cael 1, fi yn llai na neu'n hafal i m, fi yn ogystal a mwy. Ac yna, o fewn y corff hwn dolen, rwy'n dim ond yn mynd i wneud swm yn hafal i swm ynghyd i. Neu, yn symlach, yn ogystal â swm hafal i, sy'n cyflawni'r un canlyniad. Ac yna yn olaf, mae angen imi ddychwelyd swm yr wyf i wedi ei gyfrifo. Felly yr wyf yn ychwanegu swm dychwelyd. Nawr Dydw i ddim ei wneud eto. Angen i mi ddysgu C fod hyn swyddogaeth mewn gwirionedd yn bodoli. Ac felly ar ben fy ffeil Rydw i'n mynd i ddatgan yr hyn yr ydym wedi galw swyddogaeth prototeip, union yr un fath i'r llofnod a ddefnyddiais wrth ddiffinio swyddogaeth funud yn ôl. Yn benodol, ychydig yn uwch na'r brif, Rydw i'n mynd i deipio int sigma, int m, hanner colon. Ddim yn gweithredu'r swyddogaeth eto, dim ond datgan ei. Os wyf yn awr yn arbed, crynhoi, ac yn rhedeg y rhaglen, gadewch i ni weld yr hyn yr wyf yn ei gael. Gwneud sigma 0 dot slaes sigma 0. Ac yn awr gadewch i ni roi cyfanrif positif fel 2, a ddylai roi i mi tri, gan fod y gwerthoedd rhwng 1 a 2 yn 1 a 2 yn dychwelyd 3. Ac yn wir, dyna beth yr wyf yn ei gael. Gadewch i ni ei redeg eto, mae hyn yn amser gyda, dyweder, 3. Felly, ddylwn i gael 1 a 2 a 3 Dylai roi i mi 6. Ac yn wir, yr wyf yn cael 6. A gadewch i ni roi cynnig ar un gwerth diwethaf, yn dweud 50. Ac mae 1,275 yw ein ateb.