DAVID J. MALAN: Vamos começar a escrever algumas condições mais complexas. Em particular, vamos escrever um programa que solicita ao usuário para um número inteiro, dizer, entre 1 e 10, e, em seguida, faz um pouco de análise. Mas, desta vez do relatório se que número é pequeno ou médio ou grande tamanho, desenho essas distinções bastante arbitrária. Para fazer isso, eu vou confiar em get int, que a função do CS50 biblioteca que faz exatamente isso. E eu também vou alavancagem de impressão f. Então eu vou para começar incluindo cs50.h como bem como padrão io.h. E vai, em seguida, declarar principal no maneira usual, void main int, encaracolado aberto cinta, perto chaveta. E eu estou indo, em seguida, para solicitar o usuário para um número inteiro. Imprimir f, por favor me dê um int entre 1 e 10. Agora vamos que int declarando uma variável chamada, digamos, n e atribuindo que o valor de retorno de get int. Vamos agora fazer um pouco de análise. Se n for maior do que ou igual a 0 e n é inferior ou igual a, por exemplo, 3, então nós estamos indo para ir em frente e impressão fora que você pegou um pequeno int. Outra coisa, se o usuário escolhe, digamos, um valor médio porte, vamos verifique se que as seguintes. Senão, se n for maior do que ou igual a, por exemplo, 4 e n é inferior ou igual a, digamos, 7, então eu vou para imprimir fora que você pegou um meio int. Finalmente, eu vou assumir que se o valor situa-se entre 8 e 10, eles escolheu um grande int. Assim, para expressar isso, vou digitar, else if n é maior do que ou igual a 8 e n é menor ou igual a 10, vá em frente e imprimir você escolheu um grande int. Caso contrário, há uma quarta condição aqui. Se o usuário não cooperou e, em vez digitado um valor que é menos do que 0 ou maior que 10, eu quero simplesmente bronca. Else imprimir, você escolheu um int inválido. Vamos salvar o arquivo. Compilá-lo com fazer não-switch. De volta ao meu aviso, eu vou correr com ponto barra não-switch. E vamos tentar alguns valores. Primeiro, vamos não cooperar e digite negativo 1. Felizmente, que foi detectado pelo nosso ramo final em que condição. Vamos tentar de novo com corte de ponto não-chave, desta vez dando-lhe 1. Eu, na verdade pegou um pequeno int. Vamos fazê-lo novamente com o corte de ponto não-chave, desta vez pegando, digamos, 5. E isso é um meio de int. Vamos agora fazer novamente dot reduzir não-switch. E dar-lhe um valor de 10, que é de fato um grande int. Agora vale a pena notar que este programa poderia ter sido implementado em qualquer número de maneiras. Em primeiro lugar, foi completamente arbitrário que eu desenhei as linhas que eu fez entre pequeno, médio e grandes ints. Poderíamos ter tirado aqueles limites em qualquer lugar. Mas o mais interessante, eu não tinha expressar-me com todos estes maior do que ou igual a ou menos que ou igual a sinais. Eu poderia ter, por exemplo, reescrito se n é maior do que ou igual a 4 e n é inferior ou igual a 7, como em vez se n for maior do que 3 e n é inferior a 8, em seguida, imprimir você escolheu um meio de int. Afinal, se a entrada do usuário, por natureza get int, é um inteiro, que ou pode testar se esse valor é maior a 3 ou maior do que ou igual a 4. E poderíamos também verificar se aquele valor inferior a 8 ou menos que ou igual a 7.