Ir para conteúdo
Fórum Script Brasil
  • 0

ajuda com código que retorna a primos


zuludnovo

Pergunta

Olá, sou novo no forum e desde já agradeço a quem puder me ajudar com meu problem...É o seguinte, preciso fazer um código em java que leia 10 números inteiros e diga se o número é ou não primo, caso seja ele deve ser armazenado e ao final deve-se imprimir a soma de todos os primos que foram lidos.

Na saída fica ele diz quem é primo ou não, porém, a soma que é impressa não bate com a quantidade de números primos digitados e as frases que estão dentro do loop repetem-se várias vezes. O código que escrevi foi o seguinte:

import java.util.Scanner;
public class primos{
    public static void main(String[] args) {

    int cont=0, numero=0, armazenador=0,cont1;
    
    for (cont1=0; cont1<10;cont1++) {        
        Scanner entrada=new Scanner(System.in);
        System.out.print("digite o" +(cont1+1)+" º numero");
        numero = entrada.nextInt();

        for (cont=2; cont<numero;cont++){
            if (numero % cont ==0) {
                System.out.print("este número não é primo");    
            }else{
                System.out.print("boa garoto");
                armazenador=numero+armazenador;
            

            }
        }
    }

    System.out.println(armazenador);    

    }
}    

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Olá, segue abaixo um exemplo funcional do que pediu, até mais.

package primos;

import java.util.Scanner;

public class Primos {
	
	public static void main(String[] args){
		
		int quantidadeNumero=10;
		int[] numeros=new int[quantidadeNumero];
		int armazenador=0;
		
		Scanner entrada=new Scanner(System.in);
		
		for(int i=0; i<quantidadeNumero; i++){
			System.out.println("digite o " +(i+1)+" º numero: ");
			numeros[i]=entrada.nextInt();
			
			if( !isPrimo(numeros[i])){				
				System.out.print(" este número não é primo");    
            }else{
                System.out.print(" boa garoto");
                armazenador+=numeros[i];
            }
		}
		System.out.println();
		System.out.println("A soma dos primos são: "+armazenador);
	}
	
	public static boolean isPrimo(int numero){
		if(numero==2){
			return true;
		}
		if(numero==0 || numero==1){
			return false;
		}
		for(int i=2; i<numero; i++){
			if((numero%i)==0){
				return false;
			}
		}
		return true;
	}

}

 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...