Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Estou com dúvida no curso de Primeiros passos com Java, no exercício 5 do capítulo Variáveis e fluxo.

Prezados,

A resposta do exercício 5 do capitulo ˜variáveis e fluxo˜ apresenta uma inconsistência.

A resposta para a opção de impressão dos múltiplos de 3 utilizando a técnica de variação do contador de 3 em 3 esta inconsistente.

Se o contador i inicia em 1 e varia de 3 em 3, não resultara em múltiplos de 3.

Ao meu ver, ou inicia-se o i = 0, ou faz um tratamento condicional com um if.

Abraços.

3 respostas

Boa noite amigo, creio que não tenha entendido, mas é simples, o que vai definir a regra para imprimir de 3 em 3 é a regra que colocara no "if", para entender melhor, veja o código correto:


public class TesteFor {

    public static void main(String[] args) {

        for(int num = 1; num <100; num++){ 

            if(num % 3 == 0){

                System.out.println(num);

            }

        }

    }

}

Com isso ele verá se o número é divisível por 3, somente se essa regra for true, ele o imprimirá na tela.

Espero ter ajudado.

Abraços

Então,

Acho que vc não entendeu o que eu escrevi.

O exercício apresenta 2 possíveis respostas, uma da forma que vc mencionou, e a outra fazendo um laço variando da seguinte forma:

            for (int i = 1; i < 100; i += 3 ){
            System.out.println(i);
            }

observa que não será impresso os múltiplos de 3. será impresso: 1, 4, 7, 10.....

Isso ocorre pq o contador inicia em 1. Ou inicia-se ele com zero ou faz um tratamento com um if para o primeiro caso.

solução!

É só iniciar o i com o valor 3.

for (int i = 3; i < 100; i += 3 ){
            System.out.println(i);
            }