>> DAVID J. Malan: Ni nun praktikigi funkcio kiu ne nur havas flanko
efekto, sed anstataŭe revenoj reveno valoro.
Specife, ni efektivigu funkcio vokis akiri pozitivajn int kies
celo en la vivo estas plenumi ekzakte tion.
Specife, mi ŝatus uzi tiu funkcio jene -
int N gets akiri pozitivajn int.
Kaj tiam presitaj f, dankon cxar la procento i kiel
lokokupilo, komo, fino.
>> Nun kompreneble, akiru pozitivajn int ankoraŭ ne ekzistas.
Do ni promesas apliki ĝin aldono al la supro de mia dosiero sxnuro
kiel int montrante, ke tiu funkcio revenos en int -
akiri pozitivajn int.
Kaj ni precizigi eksplicite, ke tiu funkcio ne prenante enigo, kaj
tiel liaj argumentoj estas malplena.
Ni nun sur la fundo de mia dosiero: simple por ke mi povu konservi ĉefan supren supro,
efektive apliki aŭ difini tiun funkcion.
>> Unue ni komencu per la sama subskribo, por tiel diri -
int akiri pozitivajn int malplenon.
Kaj nun ni apliki akiri pozitivaj entjeraj jene.
Ni deklaru int, ankaŭ nomata N sed ni povus nomi ĝin preskaŭ ion
Ni ŝatus, ĉu la sekva dum kelkaj kondiĉo estas vera, kaj ni revenu al
tiu kondiĉo en momento.
Print f, bonvolu doni al mi pozitiva int, kaj nun ni uzas Akiri int el
la CS50 biblioteko reale su ke int.
>> Sed en mia kondiĉo, ni faros tiun buklo tiel longe kiel N estas malpli ol 1.
En aliaj vortoj, tiel longe kiel la uzanto ne kunlaboras per provizi al mi
kun pozitivaj entjeraj, permesu al mi re-prompto li aŭ ŝi denove, kaj denove, kaj denove
ĝis li aŭ ŝi faras.
Sed mi ne faris ankoraŭ, ĉar en la fino de tiu funkcio mi bezonas
efektive fari ion kun tiu enigo.
Kaj do mi tuj iros kun reveni per sxnuro kiel reveno fino
punktokomo, tiamaniere redoni reala int por ĉefa kiuj vokis ĉi tiun funkcion.
Nun estas notinde, ke kvankam akiri pozitivajn int redonas en entjeraj, ĝi estas
certe bona por ŝi reveni pozitiva int specife.
Tie ne estas speciala datumtipon por pozitiva entjero specife, tiel ni
simple uzu la enkonstruita en "int".
>> Nun ree en linio naŭ, rimarki, ke mi estas presi el N. Sed la N en tiu linio
apartenas al la N kiuj estas deklaritaj en linio ok.
Do rezultas vi povas absolute devas variabloj idente nomata tiel
longe kiel ekzistas ene malsamaj medioj.
Kaj memoru, ke atingo estas difinita per la krispa streĉaj kiu plej proksime
bari la variablo ke vi jam difinita.
>> Nun ni kompilos kaj kuros ĉi programo.
Faru funkcioj 1, punkto oblikvo funkcioj 1.
Ni donu pozitivan int-kiel 50, kaj gxi diras dankon pro la 50.
Dume, se ni ne kunlaboru, kuri la programon denove, donante ĝin
0, mi instigis denove, aŭ doni al ĝi negativa 1, mi instigis denove.
Sed se mi kunlaboros provizante ĝin per, diri, 50, mi dankis por la 50.