Problema no código
problema:
Leia 100 valores. A seguir, para cada valor, mostre se o valor é primo ou não. Em caso negativo, mostre quantos divisores o número possui.
amigos não estou conseguindo fazer este programa..............sou iniciante aqui..............ajudem por favor!
eu andei tentando mais não tá dando certo............
package dezexercicos;
import java.util.Scanner;
public class exerc9 {
private static Scanner edd;
public static void main(String[] args) {
edd = new Scanner (System.in);
int i,j,q=10,primo;
int A [] = new int[q];
for (i=0; i<q; i++){
System.out.printf("Informe o valor do numero: ", (i+1), q);
primo = 1;
A[i] = edd.nextInt();
for (j=0; j<i; j++){
if (i % j==0){
primo=primo+1;
}//fim do if
}// fim do segundo for
if (primo==2){
System.out.println("O numero é primo: ");
}
else{
System.out.println("O numero não é primo: ");
System.out.println("O total de divisores é: " + primo);
}
}//fim do primeiro for
}
}
Leia 100 valores. A seguir, para cada valor, mostre se o valor é primo ou não. Em caso negativo, mostre quantos divisores o número possui.
amigos não estou conseguindo fazer este programa..............sou iniciante aqui..............ajudem por favor!
eu andei tentando mais não tá dando certo............
package dezexercicos;
import java.util.Scanner;
public class exerc9 {
private static Scanner edd;
public static void main(String[] args) {
edd = new Scanner (System.in);
int i,j,q=10,primo;
int A [] = new int[q];
for (i=0; i<q; i++){
System.out.printf("Informe o valor do numero: ", (i+1), q);
primo = 1;
A[i] = edd.nextInt();
for (j=0; j<i; j++){
if (i % j==0){
primo=primo+1;
}//fim do if
}// fim do segundo for
if (primo==2){
System.out.println("O numero é primo: ");
}
else{
System.out.println("O numero não é primo: ");
System.out.println("O total de divisores é: " + primo);
}
}//fim do primeiro for
}
}
Kikunha
Curtidas 0
Melhor post
Ronaldo Lanhellas
22/10/2014
Tente assim:
import java.util.Scanner;
public class exerc9 {
private static Scanner edd;
public static void main(String[] args) {
edd = new Scanner(System.in);
int i, j, q = 100, primo;
int valor;
for (i = 0; i < q; i++) {
System.out.printf("Informe o valor do numero: ", (i + 1), q);
primo = 0;
valor = edd.nextInt();
for (j = 1; j <= valor; j++) {
if (valor % j == 0) {
primo = primo + 1;
}// fim do if
}// fim do segundo for
if (primo == 2) {
System.out.println("O numero é primo: ");
} else {
System.out.println("O numero não é primo: ");
System.out.println("O total de divisores é: " + primo);
}
}// fim do primeiro for
}
}
GOSTEI 1
Mais Respostas
Kikunha
22/10/2014
correção: int i,j,q=100,primo;
GOSTEI 0
Ronaldo Lanhellas
22/10/2014
correção: int i,j,q=100,primo;
Esta foi a correção do seu problema ou ainda está com o problema ?
GOSTEI 0
Kikunha
22/10/2014
ainda estou amigo.............só executa 1 numero........
GOSTEI 0
Kikunha
22/10/2014
obrigado amigo! duvida resolvida.
GOSTEI 0
Ronaldo Lanhellas
22/10/2014
obrigado amigo! duvida resolvida.
De nada.
GOSTEI 0