GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Imprimir todos os números de 1 a 100 e dizer se ele é ou não múltiplo de 3


#1

Olá pessoal, essa é a minha primeira participação no forúm do GUJ, já faz uns 40 dias que estou circulando pelo mundo JAVA. É coisa de outro mundo... encontrei na net alguns materiais interessantes, mas todos tem o mesmo problema: Não existem muitos exercícios práticos. Um deles é o que citei como título do tópico.

Peguei a apostila do GUJ ontem para alavancar meus estudos, estou no propósito de dedicar 4 horas por dia para estudar JAVA, mas já faz 6 horas que estou aqui na frente do computador tentando resolver o exercício 3.8.

Consegui resolver os três primeiros depois de muita luta, mas o 4º, resolvi mais ou menos. Preciso de uma outra opinião. O código que escrevi está assim:

import java.io.*;
   class MeuPrograma3{
       public static void main(String[] args){
          for(int i = 1; i <= 100; i++) {
          if(i%3 == 0){
       System.out.println("Eh Multiplo= " +i);
       System.out.println("Nao eh multiplo= " + (i%3 != 0));
       }
      }
   }
}

Deu certo mas, gostaria que vcs executassem aí para ver como é que fica o resultado final, minha dúvida é:
É isso mesmo que o GUJ queria?


#2

acho q faltou o else...

			if (i % 3 == 0) {
				System.out.println("Eh Multiplo= " + i);
			} else {
				System.out.println("Nao eh multiplo= " + (i % 3 != 0));
			}

#3

:smile: Muito Obrigado Focão!!!

Mas ainda assim ele não apresenta os números que não são multiplos, em vez de apresentar os números:
[list]1[/list]
[list]2[/list]

ele apresenta apenas a mensagem de "Não eh múltiplo = true". Lógico que depois de sua dica as coisas melhoraram pois nem isso ele imprimia antes. Mas tem alguma forma de ele apresentar os números junto com a mensagem "Não eh multiplo".

Se não houver beleza. Quero entender bem esse negócio de for, while, if e else na prática.


#4

if (i % 3 == 0) {   
    System.out.println(i + " Eh");   
} else {   
    System.out.println(i + " Nao eh");   
}

mas nunca use + em String quando for concatenar use StrngBuffer


#5

Opa.
Um bom site de exercícios de lógica usando Java é esse: http://www.javabat.com/
Tem umas coisas meio difíceis aí :smile:

Abraço.

[edit]
Sobre seu problema:

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

Para imprimir todos os múltiplos de 3.
Agora, pra apresentar de 1 a 100 e dizer se é múltiplo:

 for (i = 1; i <= 100; i++) {
      if ((i % 3) == 0) 
          System.out.println("Multiplo.");
      else
          System.out.println("Nao multiplo.");
}

Abraço.
[/edit]


#6

Pessoal, muito obrigado mesmo, gastei quase um dia inteiro fazendo várias tentativas, na verdade foram seis horas quebrando a cabeça. Muito Obrigado mesmo, depois de ter errado muito, essa dica de vocês foi que precisava para abrir minha mente.

Podem ter certeza que quando postar uma dúvida no fórum é por que a minha cuca já vai estar rachando.!!!
rsrsrsrsrsrsr

Um abraço a todos, Focão e André Brito. Valeu!


#7