Num trabalho tem */ nao sei o que é!

Boas, um professor meu me deixou com a seguinte questão:

  1. Indique, justificando, qual é o ?output? do seguinte extracto de código para as três seguintes hipóteses de iniciação da variável option:
    h1) char option = ‘d’;
    h2) char option = ‘R’;
    h3) char option = ‘e’;

para o codigo:

[code]

double p=Math.PI * 5;
switch (option) {
case ‘r’: case ‘R’:
p /= 2;
case ‘d’: case ‘D’:
p /= Math.PI;
break;
case ‘a’: case ‘A’:
p *= p; p /= 4;
p /= Math.PI;
break;
default: p = 0;
}
p *= 100; p += 0.5; p = (int)p; p /= 100;
System.out.println§;[/code]

Não to conseguindo perceber onde ele quer chegar! alguem me pode ajudar?

ja sei :stuck_out_tongue: p */=2 é igual a p=p/2 :smiley:

Boa noite,

quando tem dúvidas num trecho de código, é sempre mais fácil executá-lo. À medida que vai dando valores à variàvel option, irá perceber melhor funcionamento do programa.
Quando tem:
x = y é o mesmo que x = xy
x /=y é o mesmo que x = x/y

Depois tem que verificar se option=‘d’ então vai entrar aqui
case ‘d’: case ‘D’:
p /= Math.PI;
break;

ou seja, p= Math.PI * 5/Math.PI , p=5
depois é realizar cada uma das contas p *= 100; p += 0.5; p = (int)p; p /= 100; e é mostrado o valor final de p que é 5,005

Ok?
Espero ter ajudado…

:smiley: muito obrigado! eu tentei correr o codigo, talvez por falta de atenção ou por outra coisa qualquer nao percebi, mas sim tenho a minha duvida esclarecida! muito agradecido!

De nada :wink: Ainda bem que ajudou…