Exercícios Resolvidos de Loops infinitos, loops aninhados e os comandos break e continue

Ver Teoria

Enunciado

Ler um número e imprima “1” se ele for primo e “0” se ele não for primo.

Passo 1

Oi pessoal, vamos lá resolver essa questão.

Vamos começar relembrando que um número primo é qualquer número inteiro e positivo que só seja divisível por 1 e por ele mesmo. Então, basta a gente criar um loop e testar todas as divisões possíveis. Se houver algum caso em que o resto da divisão seja zero, então o número não é primo.

Vamos começar declarando as variáveis. Vamos precisar de uma variável para conter o número inteiro digitado pelo usuário, chamada n u m . Uma outra variável inteira chamada i será a variável usada no nosso laço.

Também vamos criar uma variável lógica chamada p r i m o que será inicializada com o valor t r u e . Dessa forma, todo número é considerado primo até que se prove o contrário!

Então, vamos declarar essas variáveis no código:

Passo 2

Antes de escrever o laço precisamos receber o número do usuário. Usamos o c o u t para pedir o número e com o c i n armazenamos o valor na variável correta.

Passo 3

Agora vamos usar um laço f o r para testar se o número é ou não primo.

Já sabemos que os números primos são divisíveis por um, então não faz sentido testar a divisão por   1 , por isso vamos começar os testes partindo do i = 2 . Da mesma forma, não faz sentido testar se o número é divisível por ele mesmo. Então, a expressão de teste do nosso laço vai ser:

i = 2   ;   i < n u m   ; i + +

Percebe que tem 3 informações aí (separadas por ponto e vírgula). Primeiro declaramos o valor inicial i = 2 . Depois informamos até quando o loop deve continuar, ou seja, enquanto i < n u m . Por fim, o termo i + + significa que somamos 1 à variável i , a cada iteração. Na interface, fica assim:

Agora dentro do loop! Pra testar se o número é primo vamos usar uma estrutura i f .

Se o n u m for divisível por i então ele não é primo, e o valor lógico da variável p r i m o deve ser mudado para f a l s e . Se isso acontecer uma vez, já é suficiente pra sabermos que o número não é primo. Nesse caso não será preciso continuar os testes, então usamos o comando b r e a k para interromper o loop.

Passo 4

O nosso laço f o r está finalizado! Agora é só imprimir a resposta pro usuário usando o comando c o u t para mostrar o valor contido na variável p r i m o

Resposta