olá pessoal, eu to com uma dúvida IMENSA (de vdd mesmo, tentei várias coisas mais nao ia nada)
Dois números inteiros são ditos primos entre si
quando não existir um divisor maior do que 1 (um) que divida ambos. Isto
significa que o máximo divisor comum dos primos entre si é igual a 1. Por
exemplo, 12 e 13 são primos entre si; porém, 12 e 14 não o são porque ambos
são divisíveis por 2. Implemente uma função que receba como parâmetro dois
números inteiros positivos, ou seja, maiores que zero, e decida se os números
dados são primos entre si. A função deve retornar true, se os números forem
primos entre si. Caso contrário, ela deve retornar false. Implemente também o
programa principal (main) que utilizará a função. Os valores dos dois números
devem ser fornecidos pelo usuário e validados no programa principal e a exibição
do resultado também deve ocorrer no programa principal. OBS: O usuário
poderá testar quantos números desejar.
Queria saber qual é a lógica que irei usar nos métodos com o true e o false (dos números primos)
entendi, mas a questão pede pra eu retornar true, se forem primos e false quando não forem
esse algoritmo do mdc que vc disse, eu teria que fazer uma outra função(que eu calcularia o mdc) para a dos primos chamá-la?
}
publicstaticintmdc(intn1,intn2){
intmdc=1;for(inti=1; i <= n1 && i <= n2; i++){if(n1%i==0&&n2%i==0)mdc=i;}
returnmdc;
}
eu fiz desse jeito aqui, vc acha que funciona?
sou novato no java xD
S
Solucao aceita
staroski1 like
Sim, não passei o cálculo do mdc pois você pode pesquisar.
E, conforme o exemplo, o método saoPrimosEntreSi chama o método mdc retornando true se o mdc dos dois números for igual à 1.
Testa, calcula o mdc no papel e confere se seu método está trazendo o mesmo resultado.
P
PedroMalheiros18
consegui fazer a questão aqui, fiz do seguinte modo
package gq21;
publicstaticvoidmain(String[]args){Scannerin=newScanner(System.in);intn1,n2;charresp;do{System.out.println("Digite um número maior que zero: ");n1=in.nextInt();while(n1<=0){System.out.println("Dado inválido. ");System.out.println("Digite um número maior que zero: ");n1=in.nextInt();}System.out.println("Digite outro número maior que zero: ");n2=in.nextInt();while(n2<=0){System.out.println(“Dadoinválido.”);System.out.println("Digite outro número maior que zero: ");n2=in.nextInt();