Bom dia pessoal.
To com um exercicio aqui e tenho duvida nos resultados. Pra mim isso imprimi 85, mas quando compilei imprime 82. PODEM ME AJUDAR NA SOLUÇÃO?
Segue o código.
[code]
O que imprime?
A) 53
B) 82
C) 83
D) 85
E) 103
Class Test{
public static void main(String[] args){
int x = 0;
int y = 0;
for(int z = 0; z<5; z++){
if((++x>2)(++y>2)){
x++
}
}
System.out.println(x + " " + y);
}
}
sim. Eu consegui compilar e imprimiu 82.
so preciso resaltar algo no código.
[code]
Class Test{
public static void main(String[] args){
int x = 0;
int y = 0;
for(int z = 0; z<5; z++){
if((++x>2)||(++y>2)){ // tem um OU aqui, tinha esquecido de colocar
x++
}
}
System.out.println(x + " " + y);
}
}
D
Daniels
++x e ++y = Eles incrementam o valor de x e y antes de ver se são menores que 2.
|| = o OU declarado dessa forma é, digamos que um "ou inteligente". Se ele achar uma expressão verdadeira ele sabe que o resultado é verdadeiro então ele ignora o resto. Ou seja, seu y será incrementado até 2, porque depois disso, x é maior que 2 em todas as condições.
Obs.: Seu código não compila. Provavelmente era pra ser isso:
para chegar no resultado que você disse tem que usar um || entre os parenteses
class Test{
public static void main(String[] args){
int x = 0;
int y = 0;
for(int z = 0; z<5; z++){
if((++x>2)||(++y>2)){
x++;
}
}
System.out.println(x + " " + y);
}
o que acontece é isso
o algorítimo só vai testar a segunda condição se a primeira não for verdadeira
caso você queira testar sempre as duas condições mesmo que a primeira for verdadeira você teria que usar | ao invés de ||
abs
I
ica_Regina
estranho pois eu consegui compilar direitinho e o resultado foi 82. Não entendo muito bem porque vc diz que não imprime…
No exercicio aqui a questão nem apresenta a opção de marcar “O cód não compila.”…
D
Daniels
?ica Regina:
estranho pois eu consegui compilar direitinho e o resultado foi 82. Não entendo muito bem porque vc diz que não imprime…
No exercicio aqui a questão nem apresenta a opção de marcar “O cód não compila.”…
Class não tem o c maiusculo.
vai ; depois do x++ dentro do if