Duvida basica

galera sou novatao mesmo em java, e to com uma duvida basica nessa função:

public class Exercicio1 {
public static void main (String[] args){
int x=9;
int y=2;
double z=x/y;
System.out.println(z);
}

}

Nessa função o resultado está saindo 4.0. Estou usando o doble corretamente? Se não qual seria o tipo correto?

Man, acho legal você da uma estudada sobre variaveis primitivas… da uma lida nesse artigo aqui:
http://javafree.uol.com.br/artigo/6936/Cap-1-Fundamentos-Linguagem.html

Espero ter ajudado.

Valeu amigo, vou dar uma lida aqui.

Velho, Voçe está usando o Double apenas para imprimir o resultado de sua divisão por inteiros.

O correto é:

public class Exercicio1 { public static void main (String[] args){ double x=9; double y=2; double z=x/y; System.out.println(z); } }

para números com até 32bits o melhor mesmo é usar float

float x=9; float y=2; float z=x/y;

falow!

isso aí …
e coloca seu código entre as tags code
como fez o nosso amigo : Maureli

:wink:

Pelo menos uma das variáveis do cáculo precisa ser do tipo flutante e ao invés de int vc tem outra opção q é o short, talvez a melhor escolha para o exemplo q vc deu:
re:

		[code]short x=9; 
		float y=2; 
		System.out.println(x/y); [/code]

ou

	[code]	float x=9; 
		short y=2; 
		System.out.println(x/y); [/code]

Isso ai pessoal, deu certo aqui. Coloquei as outras duas variáveis como double.

Valeu pela ajuda.

Testei todos os exemplos e deram tudo certo…

[code]public class Exercicio1 {
public static void main (String[] args){
int x=9;
int y=2;
double z=x/y;
System.out.println(z);
}

} [/code]

quando o z recebe x/y ele recebe um valor inteiro, por isso você perde valores apos a virgula, o correto mesmo é que pelo menos um dos dois x ou y seja double também :wink:

[quote=andrestrife]Isso ai pessoal, deu certo aqui. Coloquei as outras duas variáveis como double.

Valeu pela ajuda.[/quote]

Então marca o post como RESOLVIDO