Ola senhores,
Estou estudando um livro chamado: "C REcipes,A Problem-Solution Approach"
Um livro muito legal para desenvolver habilidade de codar, e no caso estou no primeiro codigo que ele deu o titulo de " Soma mais um" abaixo o link do codigo completo.
entre a linha 10 e a linha 16 tem um Do-while(inner) dentro de outro Do-while(Outer), a questao é que dentro do DO-While(inner)
O autor define uma varialvel int flag=0
que define se vai continuar o loop (pelo menos acredito assim), uma vez que vc digita uma valor intN igual a qualquer valor entre 0 e 30.000 a variavel flag do while muda para flag= 1, fazendo terminar o loop da intereçao.
a questao que me vem a cabeça é que se o do-while for 1, normalmente isso gera loop infinito e nao finaliza a interaçao, no caso aonde estou errando na interpretaçao desse codigo?
Tags:
Boa tarde AA,
vamos analisar o código:
Se você digita um numero entre 0 e 30000, o " if((intN <=0) || (intN > 30000))" não será
atendido, próxima linha não será executada, e "flag" fica 0, e
e a próxima linha não será executada e o "do" continuará rodando, salva este valor e sai do "do".
Mas se você digitar algo diferente deste intervalo, por exemplos 30001,
o " if((intN <=0) || (intN > 30000))" será atendido e a próxima linha será executada,
ficando "flag = 1" e mantendo o "do" rodando.
RV
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por