[RESOLVIDO] - Achar múltiplos de 3 e 5 entre dois limites

11 respostas
M

Boa tarde, preciso fazer um método que gere e exiba os múltiplos comuns de 3 e 5, de limite1 a limite2.
Eu tenho uma parte de código implementada, mas não funciona corretamente:

public int geraExibeMultiplos(){
        int multi5 = 5;
        int multi3 = 3;
        int numeros = limite1 +(int)( limite2*Math.random());
        if (numeros%3==0)
        multi3 = multi3 + numeros;
        else if(numeros%5==0)
        multi5 = multi5 + numeros;
        
    
    }

As variáveis limite1 e limite2 nesse caso já estão com os devidos valores dentro delas.

11 Respostas

D
maxcanoas:
Boa tarde, preciso fazer um método que gere e exiba os múltiplos comuns de 3 e 5, de limite1 a limite2. Eu tenho uma parte de código implementada, mas não funciona corretamente:
public int geraExibeMultiplos(){
        int multi5 = 5;
        int multi3 = 3;
        int numeros = limite1 +(int)( limite2*Math.random());
        if (numeros%3==0)
        multi3 = multi3 + numeros;
        else if(numeros%5==0)
        multi5 = multi5 + numeros;
        
    
    }

As variáveis limite1 e limite2 nesse caso já estão com os devidos valores dentro delas.

tem certeza que vai usar random ??

M

eu só conheço essa maneira de gerar números entre dois limites.

D

então, isso é um exercicio certo ?

provavelmente o exercicio quer saber 1: todos os números que sejam (multiplos de 3 e 5) ou…2: todos os numeros que sejam multiplos e 3 e os numeros multiplos de 5

provavelmente você vai usar um for que inicia no limite 1 e termina no limite 2…

seus ifs estão certos… se for o caso 2…se for o caso 1 é necessário uma alteração…

o que vai dentro do if esta errado…

M

Sim, é um exercício, e entre os limites limite1 e limite2, eu tenho que achar todos os valores que são múltiplos de 3 e 5.

E

Para achar todos não se usa “random”. Vamos dar um exemplo.

Digamos que você queira gerar os números entre 1 e 6 usando um dado (que gera números aleatórios entre 1 e 6).

Agora, imagine que seu dado esteja viciado e dê só o valor 3.

Você vai conseguir gerar todos os números entre 1 e 6?

D

vamos raciocinar juntos:

um numero é multiplo de 3 se: numero%3==0

um numero é multiplo de 5 se: numero%5==0

um numero é multiplo de 3 e 5 se: ( numero%3==0 E numero%5==0 )

qual seu exercicio quer ??? as 2 primeiras opções ou a ultima ?

25 é multiplo de 5 mas não é multiplo de 3

15 é multiplo de 3 e também multiplo de 5

9 é multiplo de 3 mas não é multiplo de 5

entendendo isso…

você poderia fazer assim: percorrer numero por numero do limite 1 até o limite 2… testar cada numero para ver se ele é multiplo… se sim você imprime…

de uma olhada no for… , while… e do…while

X
maxcanoas:
Boa tarde, preciso fazer um método que gere e exiba os múltiplos comuns de 3 e 5, de limite1 a limite2. Eu tenho uma parte de código implementada, mas não funciona corretamente:
public int geraExibeMultiplos(){
        int multi5 = 5;
        int multi3 = 3;
        int numeros = limite1 +(int)( limite2*Math.random());
        if (numeros%3==0)
        multi3 = multi3 + numeros;
        else if(numeros%5==0)
        multi5 = multi5 + numeros;
        
    
    }

As variáveis limite1 e limite2 nesse caso já estão com os devidos valores dentro delas.

Cara se você tem os limites porque não está usando random e não um laço? Exemplo de se seu limite vai de 3 a 15 você faria:
int limiteInferior = 3;
int limiteSuperior = 15;

for (int numero = limiteInferior; numero <= limiteSuperior; limiteSuperior++){
...
}
Para testar você também tem um problema você deveria ter dois IFs e não um if else. Um exemplo é o numero 15 ele é multipo de 3 e 5.
if ((numero %3) ==0)
  ...

if ((numero % 5) ==0)
  ...
M
douglaskd:
maxcanoas:
Sim, é um exercício, e entre os limites limite1 e limite2, eu tenho que achar todos os valores que são múltiplos de 3 e 5.

vamos raciocinar juntos:

um numero é multiplo de 3 se: numero%3==0

um numero é multiplo de 5 se: numero%5==0

um numero é multiplo de 3 e 5 se: ( numero%3==0 E numero%5==0 )

qual seu exercicio quer ??? as 2 primeiras opções ou a ultima ?

25 é multiplo de 5 mas não é multiplo de 3

15 é multiplo de 3 e também multiplo de 5

9 é multiplo de 3 mas não é multiplo de 5

entendendo isso...

você poderia fazer assim: percorrer numero por numero do limite 1 até o limite 2.... testar cada numero para ver se ele é multiplo... se sim você imprime...

de uma olhada no for.. , while... e do...while

Pois então, eu preciso dos múltiplos comuns entre 3 e 5, dei uma olhada aqui, e vi o erro que eu estava cometendo em não usar laços de repetição, daí vi também o post do x@ndy, meu código ficou assim:
public int geraExibeMultiplos(){
       for (int num = limiteUm; num <= limiteDois; num++){  
           if (num%3==0 && num%5==0){
            .....
            
            }
        }  
    }
seria por aí?
R
maxcanoas:
Pois então, eu preciso dos múltiplos comuns entre 3 e 5, dei uma olhada aqui, e vi o erro que eu estava cometendo em não usar laços de repetição, daí vi também o post do x@ndy, meu código ficou assim:
public int geraExibeMultiplos(){
       for (int num = limiteUm; num <= limiteDois; num++){  
           if (num%3==0 && num%5==0){
            .....
            
            }
        }  
    }
seria por aí?
Esse é o caminho :) Você pode calcular o MMC também, e fazer comparações a partir dele
X
maxcanoas:
Pois então, eu preciso dos múltiplos comuns entre 3 e 5, dei uma olhada aqui, e vi o erro que eu estava cometendo em não usar laços de repetição, daí vi também o post do x@ndy, meu código ficou assim:
public int geraExibeMultiplos(){
       for (int num = limiteUm; num <= limiteDois; num++){  
           if (num%3==0 && num%5==0){
            .....
            
            }
        }  
    }
seria por aí?
Se você necessita de somente de numeros que são multiplos de 3 e 5está certo! Agora se você necessita de numeros que são multplos de 3 ou 5 está errado pois você numeros que são multiplos de 3 mas não são de 5, multiplos de 5 que não são de 3 e numeros que são muiltiplos de 3 e 5 exemplo: 9 multiplo de 3 mas não de 5, 10 multiplo de 5 mas não de 3 e 45 que multiplo de 3 e 5
M
x@ndy:
maxcanoas:
Pois então, eu preciso dos múltiplos comuns entre 3 e 5, dei uma olhada aqui, e vi o erro que eu estava cometendo em não usar laços de repetição, daí vi também o post do x@ndy, meu código ficou assim:
public int geraExibeMultiplos(){
       for (int num = limiteUm; num <= limiteDois; num++){  
           if (num%3==0 && num%5==0){
            .....
            
            }
        }  
    }
seria por aí?
Se você necessita de somente de numeros que são multiplos de 3 e 5está certo! Agora se você necessita de numeros que são multplos de 3 ou 5 está errado pois você numeros que são multiplos de 3 mas não são de 5, multiplos de 5 que não são de 3 e numeros que são muiltiplos de 3 e 5 exemplo: 9 multiplo de 3 mas não de 5, 10 multiplo de 5 mas não de 3 e 45 que multiplo de 3 e 5

É, eu preciso dos múltiplos comuns entre 3 e 5.
Mas então tá beleza, valeu...agora eu consigo terminar aqui.

Criado 8 de maio de 2013
Ultima resposta 9 de mai. de 2013
Respostas 11
Participantes 5