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

5 respostas
A

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…

5 Respostas

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!

Frantic_Avenger
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!

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

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]);  
			}
		}
	}
}
A

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!

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

A
Frantic Avenger:
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!

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

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]);  
			}
		}
	}
}

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...

douglasmendes

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

Criado 14 de novembro de 2011
Ultima resposta 15 de nov. de 2011
Respostas 5
Participantes 4