[RESOLVIDO] - Avaliem meu código sou novato em java... Operador Condicional

Eu poderia usar if e else , mas decidi fazer usando Operador Condicional <exp1 ? exp2 : exp3>

Exercicio - Entrar com um número e informar se ele é divisível por 10, ou é divisível por 5, ou é divisível por 2 ou se não é divisível por nenhum destes.

public static void main(String args[])
    { 
	  int x;
	  Scanner sc = new Scanner(System.in);
	  
	  System.out.printf("\nEntre com um Numero: ");
	   x = sc.nextInt();
	  
	  String r1, a1 = "E Divisivel por 2", b1 = "Nao e Divisivel por 2";
	   r1 = ((x % 2 == 0) ? a1 : b1);
      
	  String r2, a2 = "E Divisivel por 5", b2 = "Nao e Divisivel por 5";
	   r2 = ((x % 5 == 0) ? a2 : b2);
	  
	  String r3, a3 = "E Divisivel por 10", b3 = "Nao e Divisivel por 10";
	   r3 = ((x % 10 == 0) ? a3 : b3);
	  
	  System.out.println("\n" + r1 + "\n" + r2 + "\n" + r3 + "\n");
        	  
   }

Evitei de fazer amontuados de if e de else
Tenho 17 dias de Programação…sei que tenho uma batalha grande pela frente…valeu…

Oi,

A codificação está boa. Eu só evitaria a criação de variáveis desnecessárias e reutilizaria as variáveis a1 e b1. E claro, mudaria os nomes das variáveis, r1, a1, b1, Pois não significam nada para os olhos humanos.

Tchauzin!

[quote=lina]Oi,

A codificação está boa. Eu só evitaria a criação de variáveis desnecessárias e reutilizaria as variáveis a1 e b1. E claro, mudaria os nomes das variáveis, r1, a1, b1, Pois não significam nada para os olhos humanos.

Tchauzin! [/quote]

E isso aí andy11x o que a Lina disse, fiz de um outro jeito também, veja se entendeu e tals:

[code]import java.util.Scanner;

public class Principal {
public static void main(String args[]) {
int divsr[]={2, 5, 10}, num;
Scanner sc = new Scanner(System.in);
System.out.printf("\nEntre com um Numero: ");
num = sc.nextInt();
for (int aux = 0; aux < divsr.length; aux++){
if(num % divsr[aux] ==0){
System.out.println("E Divisivel por "+divsr[aux]);
}
else {
System.out.println("Nao e Divisivel por "+divsr[aux]);
}
}
}
}[/code]

[quote=lina]Oi,

A codificação está boa. Eu só evitaria a criação de variáveis desnecessárias e reutilizaria as variáveis a1 e b1. E claro, mudaria os nomes das variáveis, r1, a1, b1, Pois não significam nada para os olhos humanos.

Tchauzin! [/quote]

Verdade… , Obrigado… não tem mesmo necessidade de criar tantas…variavéis…

[quote=Frantic Avenger][quote=lina]Oi,

A codificação está boa. Eu só evitaria a criação de variáveis desnecessárias e reutilizaria as variáveis a1 e b1. E claro, mudaria os nomes das variáveis, r1, a1, b1, Pois não significam nada para os olhos humanos.

Tchauzin! [/quote]

E isso aí andy11x o que a Lina disse, fiz de um outro jeito também, veja se entendeu e tals:

[code]import java.util.Scanner;

public class Principal {
public static void main(String args[]) {
int divsr[]={2, 5, 10}, num;
Scanner sc = new Scanner(System.in);
System.out.printf("\nEntre com um Numero: ");
num = sc.nextInt();
for (int aux = 0; aux < divsr.length; aux++){
if(num % divsr[aux] ==0){
System.out.println("E Divisivel por "+divsr[aux]);
}
else {
System.out.println("Nao e Divisivel por "+divsr[aux]);
}
}
}
}[/code][/quote]

Olha gostei …do seu código , pensei também …em fazer uma Array[] e usar Estruturas de Repetição…Mas o ponto era mesmo fazer Usando o Operador Condicional…

=D se resolveu seu problema marque sua postagem como (RESOLVIDO) :lol: