>> COLUNA: Vamos implementar um programa que solicita ao usuário um número inteiro
mas continua levando-os por outro inteiro até
que é número inteiro positivo.
Bem, vamos escrever isso, inclua cs50.h, incluem padrão io ponto h, int
principal [vazio].
Agora vamos realmente começar a levar o usuário para este número inteiro, mantendo em
importa que nós queremos Reprompt los até que
número é realmente positivo.
>> Então, eu vou querer algum tipo de looping construir, mas um circuito que executa a
pelo menos uma vez.
E recordar o laço do-while permite nos a fazer exatamente isso.
Vamos codificar isso.
>> Vamos primeiro declarar um int - vamos chamá-lo de n - na qual deseja armazenar o
inteiro do usuário.
Vamos agora fazer o seguinte.
Printf, por favor me dê um int positivo.
Vamos agora começar esse int usando GetInt da biblioteca CS50
função, n fica GetInt.
E agora que terminamos fazendo alguma coisa, mas vamos querer fazer isso
enquanto n é -
o quê? -
menor que 1, se de fato quer um número inteiro positivo.
>> Vamos em frente agora e imprimir.
Se tudo estiver bem, obrigado para o int positivo,
ponto e vírgula, salve o arquivo.
Vamos agora compilar e executar.
>> Fazer barra ponto positivo positivo.
E agora eu estou sendo solicitado para um int positivo.
Deixe-me cooperar com 1.
Obrigado pela int positivo.
>> Vamos agora executar novamente este programa e não cooperar.
Por favor, me dê um int positivo.
Como cerca de um negativo?
Interessante.
O programa já está reprompted me para um int.
>> Vamos ser um pouco mais difícil com 0.
Ainda sem int positivo, então vamos cooperar e desta vez
proporcionar, outra vez, uma.
Obrigado pela int positivo.
>> Agora é importante notar que eu declarei meu n variável na linha 6,
fora do loop do-while.
Se eu em vez declarada n dentro da minha do-while loop, especificamente sobre, digamos,
linha 10, onde eu também obter o int de o usuário, que int n teria apenas
existia dentro dos limites do crespo chaves que estão atualmente no
a linha 8 e na linha 11.
>> Em outras palavras, n seria escopo dentro desse laço do-while.
Mas o problema é que nós também quer usar n na linha 12
dentro da condição.
Assim, mesmo que ele não parece tão muito, é muito deliberada que
n é declarado fora este laço do-while.