SPEAKER: Pieņemsim īstenot programmu, kas liek lietotājam, lai veselam skaitlim bet turpina pamudinot viņus citam skaitlim līdz ka skaitlis ir pozitīvs. Nu, pieņemsim rakstu šo rakstu, ietver cs50.h, ietver standarta io dot h, int Galvenais [spēkā neesošu]. Tagad faktiski sāk ātri lietotājs šim skaitlim, vienlaikus paturot nekas, ka mēs vēlamies, lai reprompt viņiem līdz, ka numurs ir faktiski pozitīva. Tāpēc es gribu kādu looping būvēt, bet cilpa, kas izpilda pie Vismaz vienu reizi. Un atcerēties do-kamēr cilpa ļauj mums darīt tieši to. Pieņemsim kodu šo augšu. Pieņemsim vispirms paziņot, int - mēs to sauc par n - kur glabāt lietotāja skaitlim. Pieņemsim tagad darīt šādi. Printf, lūdzu, iedodiet man pozitīvu int. Pieņemsim tagad iegūtu, ka int izmantojot Eiropas CS50 bibliotēkas GetInt funkcija, n izpaužas GetInt. Un tagad mēs esam darījuši kaut ko dara, bet mēs esam gatavojas vēlaties darīt, bet n ir - ko? - mazāks par 1, ja mēs patiešām vēlas pozitīvu skaitli. Iesim uz priekšu tagad un izdrukāt. Ja viss ir labi, paldies par pozitīvo int, semikols, saglabājiet failu. Pieņemsim tagad apkopot un palaist. Lai pozitīvi dot slash pozitīvs. Un tagad es esmu to pamudināja pozitīvu int. Ļaujiet man sadarboties ar 1. Paldies par pozitīvo int. Pieņemsim tagad atkārto šo programmu un nesadarbojas. Lūdzu, iedodiet man pozitīvu int. Kā par negatīvo 1? Interesanti. Programma jau reprompted man par int. Būsim nedaudz vairāk grūti ar 0. Joprojām nav pozitīva int, tāpēc pieņemsim sadarboties un šoreiz nodrošina, atkal, 1. Paldies par pozitīvo int. Tagad tas ir svarīgi atzīmēt, ka es pasludināja mans mainīgo n on line 6, ārpus do-kamēr cilpa. Es biju nevis deklarētā n iekšpusē manu do-kamēr cilpa, tieši uz, teiksim, līnija 10, kur es arī iegūt int no lietotājs, kas int n būtu tikai pastāvēja robežās no cirtaini breketes, kas pašlaik līnija 8, un tiešsaistē 11. Citiem vārdiem, n tiktu scoped līdz iekšpusē šo do-kamēr cilpa. Bet problēma ir tā, ka mums ir arī vēlaties izmantot n atbilst 12 iekšpusē stāvoklī. Tātad, pat ja tas neizskatās tik diezgan, tas ir ļoti daudz, apzinātu, ka n ir deklarēta ārpus tas do-kamēr cilpa.