>> GŁOŚNIK: Chcę wdrożyć program, który pyta użytkownika o liczbę całkowitą
ale nadal je monitowania dla innej liczby całkowitej, aż
że liczba całkowita jest dodatnia.
No cóż, piszę, m.in. cs50.h, zawierają standardowe io dot h, int
Głównym [nieważne].
Teraz rzeczywiście zaczynają skłaniać Użytkownik w tym całkowitą utrzymując w
przeszkadza, że ​​chcemy reprompt je do czasu, że
liczba jest rzeczywiście pozytywny.
>> Więc ja chcę jakieś pętli budowy, ale w pętli, która wykonuje
co najmniej jeden raz.
I przypomnieć pętli do-while pozwala nam zrobić dokładnie to.
Miejmy kodować to.
>> Niech najpierw zadeklarować int - będziemy Nazywamy to n - w którym do przechowywania
całkowitą użytkownika.
Załóżmy teraz wykonać następujące czynności.
Printf, proszę mi dać pozytywny int.
Załóżmy teraz, że otrzymasz za pomocą int GetInt w Bibliotece CS50
Funkcja, n pobiera GetInt.
A teraz skończyliśmy robić coś, ale będziemy chcieli to zrobić
gdy n jest -
co? -
mniej niż 1, jeśli rzeczywiście chcą dodatnia.
>> Idziemy naprzód teraz i wydrukować.
Jeśli wszystko jest dobrze, dzięki do pozytywnego int,
średnik, zapisz plik.
Załóżmy teraz skompilować i uruchomić.
>> Dodać pozytywne kropka ukośnik pozytywne.
I teraz mam potwierdzeniu dla pozytywnej int.
Pozwól mi współpracować z 1.
Dzięki za pozytywny int.
>> Załóżmy teraz ponownie uruchomić ten program i nie współpracują.
Proszę mi dać pozytywny int.
Jak o ujemnym 1?
Ciekawe.
Program jest już reprompted ja na int.
>> Bądźmy nieco bardziej trudne z 0.
Nadal nie pozytywne int, więc niech współpracy i tym razem
dostarczenie znowu 1.
Dzięki za pozytywny int.
>> Teraz ważne jest, aby pamiętać, że oświadczył moja zmienna n na linii 6,
poza pętli do-while.
Gdybym zamiast oświadczył n wewnątrz mojego do-while, w szczególności na, powiedzmy,
linia 10, gdzie również uzyskać z int Użytkownik, który int n miałyby jedynie
istnieje w granicach z kręconymi szelki, które są obecnie na
linia 8, a na linii 11.
>> Innymi słowy, n będzie objęty zakresem wewnątrz tej pętli do-while.
Ale problemem jest to, że również użyć n w linii 12
wewnątrz tego stanu.
Tak więc mimo, że nie wygląda tak dość, że to bardzo celowe, że
n jest zadeklarowana poza pętla do-while.