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.