>> Tagapagsalita: ipatupad ng isang programa Hayaan na prompt ang user para sa isang integer
ngunit patuloy pagdikta sa kanila para sa isa pang integer hanggang
na integer ay positibo.
Well, ni isulat ito ipaalam, isama cs50.h, ng pamantayang IO tuldok h, int
pangunahing [walang bisa].
Ngayon ay talagang simulan upang i-prompt hayaan ang gumagamit para sa integer habang pinapanatiling sa
bale na gusto naming reprompt ang mga ito hanggang sa na
bilang na ito ay aktwal na positibo.
>> Kaya makikita gusto ko ang ilan uri ng looping bumuo, ngunit isang loop na executes sa
hindi bababa sa isang beses.
At isipin ang do-loop habang nagbibigay-daan sa amin upang gawin eksakto na.
Sabihin code na ito up.
>> Ng unang magpahayag ng isang int Hayaan - kami ay tumawag ito n - kung saan upang i-imbak ang
integer gumagamit.
Sabihin ngayon gawin ang sumusunod.
Printf, mangyaring magbigay sa akin ng isang positibong int.
Sabihin ngayon makakuha na int paggamit GetInt ang CS50 library
function, n nakakakuha GetInt.
At ngayon tapos na kami paggawa ng isang bagay, ngunit kami ay pagpunta sa nais na gawin ito
habang n ay -
kung ano? -
Mababa sa 1, kung kami talaga Gusto ng isang positibong integer.
>> Sabihin sige ngayon at mag-print out.
Kung ang lahat ay mahusay, salamat para sa positibong int,
tuldok-kuwit, i-save ang file.
Ni ngayon compile at patakbuhin Hayaan.
>> Gawing positibo na tuldok na slash positibo.
At ngayon ako ini-prompt para sa isang positibong int.
Hayaan akong makipagtulungan na may 1.
Salamat para sa positibong int.
>> Ngayon muling patakbuhin ang program na ito sa Hayaan at hindi makikipagtulungan.
Pakibigyan ako ng isang positibong int.
Paano tungkol sa mga negatibong 1?
Kawili-wili.
Programa ay nai-reprompted sa akin para sa isang int.
>> Maging bahagyang higit pa Hayaan mahirap na may 0.
Hindi pa rin ng isang positibong int, kaya sabihin makikipagtulungan at oras na ito
magbigay ng, muli, 1.
Salamat para sa positibong int.
>> Ngayon ay Mahalaga na tandaan na ako ipinahayag ang aking mga variable n sa 6 linya,
sa labas ng do-loop habang.
Ay ko sa halip ipinahayag n sa loob ng aking gawin-habang loop, partikular sa, sabihin nating,
linya 10, kung saan ako makakakuha din ang int mula sa ang gumagamit, na int n ay magkakaroon lamang
umiral sa loob ng paligid ng mga kulot tirante na kasalukuyang nasa
linya ng 8 at sa linya 11.
>> Sa madaling salita, n ay scoped sa ang loob ng na do-loop habang.
Ngunit ang problema ay na namin din nais na gumamit ng n sa 12 na linya
sa loob ng kondisyon.
Kaya kahit na ito mukhang hindi kaya medyo, ito ay napaka sinadya na
n ay ipinahayag sa labas ito do-loop habang.