aki vai o codigo q até agora fiz:
package divisores;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner entrada = new Scanner (System.in);
int num,i;
System.out.print("Número: ");
num = entrada.nextInt();
System.out.print("Divisores de " + num + ": ");
for (i = 2; i <= num; i++)
if (num % i == 0)
System.out.print(i + ",");
}
}
ele aparece todos os divisores ,mas eu so qero o menor exemplo se num for 15 eu qero q apareça o 3 como menor divisor!
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
int num, i;
System.out.print("Número: ");
num = entrada.nextInt();
System.out.print("MENOR DIVISOR " + num + ": ");
for (i = 2; i <= num; i++) {
if (num % i == 0) {
System.out.print(i);
break;
}
}
}
Na verdade, para um número N, o maior divisor diferente de 1 e do próprio N, deverá estar no intervalo entre 2…N/2. Isso porque se o número for dividido por um divisor entre N/2+1 e N-1 será sempre um número menor do que 2 e maior do que 1, portanto, sempre um número quebrado.
Além disso, se o número for par, o menor divisor será obrigatoriamente o próprio 2. Portanto, se não for par, basta testarmos apenas os divisores ímpares.
[code]public int menorDivisor(int n) {
//Testa se n é divisível por 2.
//Se não for, n também não será divisível por
//nenhum número par.
if (n % 2 == 0)
return 2;
//Isso nos permite testar de 2 em 2
for (int i = 3; i <= n/2; i+=2) {
if (n % i == 0) {
return i;
}
}
//Se não encontrou nenhum divisor até n/2, então é o próprio n.
return n;
}
[/code]
Melhor que isso, só se tivessemos uma lista de todos os primos inferiores a N/2. E só dividíssemos N por esses primos.
[quote=pedroroxd]
Nem entre isso? (Sendo jcombo um JComboBox)
String a =String.valueOf(jcombo.getSelectedItem());
String b = jcombo.getSelectedItem().toString();
String c = (String) jcombo.getSelectedItem();[/quote]
Opa! Peraí!
O método getSelectedItem do JComboBox retorna um Object.
Se você fizer a chamada da forma a ou b, não deve dar erro, pois será invocado o método toString() do objeto.
Agora, no caso c, você vai ter uma runtime exception caso o objeto não seja string. O typecasting deve ser evitado sempre que possível.