Pelo que entendi você tem que comparar a sua variável de entrada “a”.
Ou seja, verificar se a >0 ou a < 0.
Você também já está calculando o resultado para os dois casos que te interessa (do jeito que fez o código não ocorre nada se a=0) antes saber se o número é positivo ou negativo. Você poderia imprimir “a * b” ou “a * c” dentro print.
Outra coisa, o input.close( ) está dentro do segundo if, se o primeiro if for verdadeiro, o input.close( ) não vai ocorrer.
Abraço.
S
samuelfranck
Testei seu código e funciona! rsss.
Mas você não está verificando se um número é positivo ou negativo e sim se o produto dele por outro positivo é, mas no fim das contas funciona do mesmo jeito…
Enfim, achei até legal o código que vc fez rs.
Se fosse um calculo complexo não compensaria calcular todos os casos antes porque estaria desperdiçando memória.
Vc aplicou uma das sugestões do colega, mas o problema com o fechamento do Scanner que ele mencionou continua.
Às observações dele quero adicionar que é importante se atentar as convenções de nomenclatura da linguagem, por exemplo, nome de classes deveriam começar com letra maiúscula. Vc tambem deveria dar nomes mais significativos para as variaveis.
Eis como eu faria:
importjava.util.Scanner;publicclassValores{publicstaticvoidmain(String...args){try(Scannerinput=newScanner(System.in)){doublenumber=input.nextDouble();if(number>0){System.out.printf("Positivo %.2f\n",number*2);}elseif(number<0){System.out.printf("Negativo %.2f\n",number*3);}else{System.out.println("Não trabalhamos com zero");}}}}
Vc viu que eu não invoquei o método close() do Scanner? Isso é por causa do try with resources. Instanciando o Scanner da forma como eu fiz, ele é fechado automaticamente pra mim.
E
Emanuel_Almeida
como assim não trabalhamos com zero?
W
wldomiciano1 like
É só uma mensagem qualquer pro usuario saber que 0 não é aceito.
Do jeito que vc fez, se o usurio colocasse zero, o programa não faria nada, aí achei importante colocar a mensagem avisando.
E
Emanuel_Almeida
Mas do jeito que fiz ta certo? ou seja, ta beleza, da pra passar?
W
wldomiciano
Na minha opinião, seu código corrigido aqui passa sim, já que faz o que foi pedido. Só bota a linha input.close(); no lugar certo.