SPEAKER: Katsotaanpa toteuttaa ohjelma, joka kysyy käyttäjältä kokonaisluvun mutta jatkuu kehottaa heitä toisen kokonaisluku asti että kokonaisluku on positiivinen. No, nyt kirjoitan tätä, kuuluvat cs50.h, ovat standardin io dot h, int Tärkein [void]. Nyt todella alkaa kysymään Käyttäjä tämän kokonaisluku pitäen mielessä, että haluamme reprompt ne vasta, että määrä on todella positiivinen. Niin minä haluan jonkinlainen kiehkura rakentaa, mutta silmukka, joka suorittaa osoitteessa ainakin kerran. Ja muistaa do-while-silmukka sallii meitä tekemään juuri näin. Katsotaanpa koodata tähän asti. Katsotaanpa ensin julistaa int - me kutsuvat sitä n - säilytystä käyttäjän kokonaisluku. Katsotaanpa nyt tehdä seuraavaa. Printf, antakaa minulle positiivinen int. Katsotaanpa nyt saada, että int käyttäen CS50 kirjaston GetInt toiminto, n saa GetInt. Ja nyt olemme tehneet tekemässä jotain, mutta aiomme halua tehdä tätä kun n on - mitä? - alle 1, jos me todellakin haluavat positiivinen kokonaisluku. Mennään eteenpäin nyt ja tulostaa. Jos kaikki on hyvin, kiitos positiivisen int, puolipiste, tallenna tiedosto. Katsotaanpa nyt kääntää ja ajaa. Tee positiivinen dot slash positiivinen. Ja nyt olen kehotetta positiivisen int. Saanen yhteistyötä 1. Kiitos positiivinen int. Katsotaanpa nyt uusintana tämän ohjelman ja tee yhteistyötä. Antakaa minulle positiivinen int. Entä negatiivinen 1? Mielenkiintoinen. Ohjelma on jo reprompted minua int. Olkaamme hieman vaikeaa 0. Vielä ole positiivinen int, joten katsotaanpa yhteistyötä ja tällä kertaa ja kerro, jälleen, 1.. Kiitos positiivinen int. Nyt on tärkeää huomata, että I julisti minun muuttujan n rivillä 6, ulkopuolella do-while-silmukka. Olinko sijaan julisti n sisällä minun do-while-silmukka, nimenomaan vaikkapa linja 10, jossa saan myös int alkaen käyttäjälle, että int n olisi vain olemassa rajoissa kihara henkselit, jotka ovat tällä hetkellä linja 8 ja rivillä 11. Toisin sanoen, n tulisi scoped kohteeseen sisällä että do-while-silmukka. Mutta ongelma on, että myös haluat käyttää n linjassa 12 sisällä kunnossa. Joten vaikka se ei näytä niin kaunis, se on hyvin paljon tahallista että n on julistettu ulkopuolella tämä do-while-silmukka.