[Powered by Google Translate] Tommy MACWILLIAM: Hebu majadiliano kuhusu tanzi, moja ya kawaida
programu constructs tutaweza kuona katika CS50.
Tutaweza kutumia loops wakati tunataka kufanya
kazi zaidi ya mara moja.
Kwa mfano, sisi kutaka magazeti "hi" mara 100 au magazeti
nje barua zote za alfabeti.
Katika wote wa kesi hizi, tuna jambo moja tunataka kufanya
mara nyingi, magazeti kitu nje.
Hata hivyo, nini sisi magazeti nje kila wakati wanaweza kutofautiana.
Hivyo tunaweza kufanya kitu tofauti kidogo juu ya kila
iteration, au kukimbia kwa njia ya kitanzi.
Tutaweza kuona aina tatu tofauti za matanzi katika C, wakati
tanzi, kwa tanzi, na kufanya wakati matanzi.
Ingawa haya matatu aina ya matanzi kuwa syntax tofauti,
mawazo nyuma yao ni sawa.
Tutaweza kufafanua baadhi block ya maadili ndani ya braces curly,
linaitwa mwili wa kitanzi, kwamba tunataka wauawe
baadhi idadi ya nyakati.
Kwa kubadilisha maadili ya vigezo kutumika katika mwili, sisi
wanaweza kufanya kitanzi wetu kufanya kitu tofauti kila wakati ni kukimbia.
Kwa yoyote kitanzi sisi kuandika, tutaweza pia haja ya kuamua wakati
kitanzi kuacha mbio.
Kama hatuwezi kufanya hivyo, basi trusty wetu kompyuta itaendelea
kuendesha kwamba kitanzi mpaka sisi kuua mpango.
Katika Scratch, tunaweza kutumia kurudia n mara
kuzuia kuunda kitanzi.
Wote wa vipande ndani ya kuzuia kwamba alisema kurudia 10
itakuwa kukimbia mara 10.
Na kisha, tunatarajia kuendelea na vipande baada ya kitanzi kwamba.
Hivyo kuacha yetu hali ilikuwa tu, block hii imekuwa
kukimbia mara 10.
Basi hebu recreate hii katika C. Ili Scratch kuhakikisha
kwamba vipande ndani ya kuzuia kurudia ni kunyongwa
hasa mara 10, Scratch inahitaji kuweka wimbo wa kila
utekelezaji wa kuzuia kurudia.
Ili kuweka wimbo wa jinsi mara nyingi kitanzi yetu mwili imekuwa
kunyongwa, hebu kuunda variable kuitwa i.
Tutaweza kuanza i mbali katika sifuri, tangu kitanzi wetu
haijawahi kuendesha bado.
OK
Sasa tutaweza kutumia Keyword wakati kuanza mbali kitanzi yetu.
Sasa tutaweza haja ya kufikiri wakati kitanzi wetu kuacha, lakini
hebu kuondoka hii kwa sasa na kisha kuja nyuma yake.
Wote haki.
Ndani ya kitanzi wetu, wacha tu magazeti ujumbe nje, kama
"Hi." Tunaweza kutumia kazi printf kwa hili.
Wote haki.
Hivyo sasa tutaweza kurekodi kwamba iteration ya mwili kitanzi ina
alinyongwa.
Tunaweza kufanya hivyo kwa kuongeza 1, au incrementing, counter wetu
variable, i.
Ili kufanya hivyo, tunaweza kusema i ni sawa na i plus 1, au zaidi
tu, i plus plus.
Mkuu.
Hivyo sasa tunaweza kuona kwamba kila wakati kitanzi yetu ni kukimbia, yetu
variable counter huenda juu kwa moja.
Hivyo sisi kujua hasa jinsi wengi iterations tumekuwa kukimbia hadi sasa.
Baada ya mmoja iteration ya kitanzi, thamani yetu
ya i itakuwa 1.
Baada iterations mbili, i itakuwa 2.
Na baada ya iterations 10, i itakuwa 10.
Hivyo, kama tunataka kukimbia hii kitanzi hasa mara 10, basi
hii ni wakati tunataka kuacha.
Hivyo tunataka kukimbia hii kitanzi wakati i ni chini ya 10, na
hiyo ni sawa kabisa tutaweza kuandika, wakati i
ni chini ya 10.
Hali hii inaonekana tu kama hali ya sisi kutumika katika iwapo
mwingine vitalu.
Baada ya mwili wa kitanzi yetu imekuwa kunyongwa, mpango wetu
utaongezeka nyuma hadi hali matanzi.
Kama hali ni kweli, basi mwili wa
kitanzi utaendeshwa tena.
Kama hali ni tena kweli, basi kitanzi wetu hautakuwa
kukimbia tena na hoja juu ya line ya pili ya code
chini ya kitanzi yetu.
Wote haki.
Basi hebu tuangalie aina ya pili ya
kitanzi, kwa kitanzi.
Next Keyword wakati, katika mabano, tulikuwa na jambo moja,
hali ambayo inahitajika kuwa ni kweli kwa
mwili kitanzi kwa kuwa na kukimbia.
Hiyo ina maana tulikuwa na kujenga variable yetu counter nje
ya kitanzi na kumbuka increment ni wakati fulani
ndani ya kitanzi.
header kwa wetu kwa kitanzi, kwa upande mwingine, ina tatu
sehemu, ambayo kila mmoja itakuwa waliojitenga semicolon.
Katika tatu yetu ya kwanza, tunaweza kutangaza yoyote counter au msaidizi
vigezo tunatarajia kutumia katika kitanzi yetu.
Katika mazoezi, hii inaweza kuwa kweli kusaidia.
Sisi kwa kweli hawana haja ya kuwa kutofautiana, i, baada ya wakati wetu
kitanzi ina kukimbia, hivyo sisi kweli haipaswi kuyatangaza
nje ya kitanzi.
tatu ya pili itakuwa hali ya kuwa lazima kuwa kweli
kwa ajili ya mwili kuuawa tena, kama tu
katika wakati kitanzi yetu.
Katika tatu ya mwisho mwisho, tunaweza kuendesha taarifa kwamba itakuwa
kunyongwa baada ya kila iteration ya kitanzi, hivyo hatuna
kujenga ndani ya mwili kitanzi.
Basi hebu andika kwa kitanzi kwamba makosa chini 5-1.
Tutaweza kuanza na keyword kwa.
Tunaweza kujenga variable counter ya kwanza, ambayo tutaweza
kuweka 5 wakati huu tangu tuko kuhesabu chini,
ikifuatiwa na semicolon.
Next ni hali yetu, ambayo tutaweza kurudi.
Tatu, tunatarajia pungufu variable yetu counter baada ya
kila iteration ya kitanzi.
Hivyo badala ya kusema i plus plus, tutaweza kusema i bala bala.
Wote haki.
Hivyo tunataka mwili kitanzi kukimbia wakati i bado ni
kubwa kuliko 0.
Katika mwili wa kitanzi, hebu magazeti nje thamani ya i.
Kwa kufanya hivyo, tutaweza kutumia kazi printf, kwa kutumia d%
placeholder.
Kumbuka, placeholder kwamba itakuwa kubadilishwa kwa
thamani ya i.
Hatimaye, hebu kuongeza taarifa baada yetu kwa kitanzi.
Wakati sisi kukimbia hii kitanzi, i kuanza mbali katika 5,
hivyo 5 itakuwa printed.
Mara moja i anapata 0, hali muendelezo, i ni
kubwa kuliko 0, tena kushikilia.
Hivyo kitanzi wetu kuacha utekelezaji, na tutaweza kuona
Taarifa baada ya kitanzi.
Basi hebu kukimbia hii code.
Kwanza, tutaweza kukusanya
countdown.c na kufanya Countdown.
Sasa, tunaweza kukimbia hii kificho na. Countdown /.
Katika matanzi wakati wote na kwa tanzi, yetu muendelezo
sharti kuwa checked kabla ya mwili
ya kitanzi ni kunyongwa.
Hiyo ina maana kuwa, kama hali yetu si ya awali
kweli, basi mwili wa kitanzi wetu kamwe kuwa na kukimbia.
Hivyo ni wakati mwingine muhimu ya kuangalia hali ya baada ya
mwili wa kitanzi badala ya kabla yake.
Basi hebu kuandika kitanzi kuchochea mtumiaji kwa idadi
mpaka idadi chanya ni hutolewa.
Kama mtumiaji pembejeo idadi hasi, tutaweza nataka kuwauliza
kwa idadi mwingine.
Hivyo tutaweza unataka hii haraka kuwa ndani ya
mwili mbali kitanzi.
Hata hivyo, wakati kitanzi ni kukimbia kwa mara ya kwanza, user
hakutupa idadi bado.
Hivyo haina mantiki kwa kuangalia kama ni chanya.
Badala yake, tutaweza wanataka kuangalia idadi baada ya mwili wa
kitanzi ni kukimbia.
Tunaweza kufanya hili kwa do wakati kitanzi.
Kwanza, tutaweza kujenga variable, n, kwamba itafanya
mtumiaji pembejeo.
Sasa tutaweza kutumia Keyword do, ikifuatiwa na braces curly kwamba
itaanza mbali mwili wa kitanzi yetu.
Katika mwili, tunaweza kuchochea mtumiaji kwa idadi na
GetInt kazi.
Sasa, sisi utasikia wanataka mwili wa kitanzi hii nitafanya tena kama
user typed idadi hasi, hivyo tutaweza kusema wakati n
ni chini ya 0.
Notice semicolon hapa baada ya taarifa ya muda.
Basi hebu kukimbia hii code.
Kwanza, tutaweza kukusanya hii na kufanya mazuri.
Sasa tunaweza kuendesha programu na / chanya..
Kama sisi kutoa mpango huu idadi hasi, kama hasi
4, basi tutaweza hutaulizwa tena kwa idadi tangu
hali ya do wetu wakati kitanzi ilikuwa kweli.
Mara sisi kutoa idadi chanya, kama 8, kisha
hali ya do wetu wakati kitanzi tena kuwa kweli.
Hivyo kitanzi si lazima ifanyike tena.
Na hiyo ni kwa aina tatu za matanzi tutaweza kutumia katika C.
Jina langu ni Tommy, na hii ni CS50.