Pretendemos criar um pequeno programa que apresenta um menu ao utilizador e leia a escolha realizada. Em consequência da mesma deve ser realizada a correspondente operação
15 respostas
B
Beatriz_Melro
Qual é o erro neste código?
publicstaticvoidmain(String[]args){Scannerteclado=newScanner(System.in);System.out.println("Cálculos Volumétricos");System.out.println("================================");System.out.println("Introduza a opção que pretende. ");System.out.println("================================");System.out.println("Opções: ");System.out.println("0 - Sair");System.out.println("1 - Volume da Esfera");System.out.println("2 - Volume da Elipse");System.out.println("3 - Volume da Pirâmide");System.out.println("4 - Volume do Cilindo");System.out.print("Opção escolhida: ");intr=teclado.nextInt();intr1=teclado.nextInt();intr2=teclado.nextInt();intr3=teclado.nextInt();inth=teclado.nextInt();intAb=teclado.nextInt();doublevolesfera=0;volesfera=(4*Math.PI*Math.pow(r,2)*r)/3;doublevolelipse=0;volelipse=(4*Math.PI*r1*r2*r3)/3;doublevolpirâmide=0;volpirâmide=(Ab*h)/3;doublevolcilindro=0;volcilindro=Math.PI*Math.pow(r,2)*h;intopcao=teclado.nextInt();System.out.println();switch(opcao){case'0':System.out.println("Sair");break;case'1':System.out.println(volesfera);break;case'2':System.out.println(volelipse);break;case'3':System.out.println(volpirâmide);break;case'4':System.out.println(volcilindro);break;default:System.err.println("Essa opção não é válida!");}System.out.println();}
System.out.println("================================");System.out.println("Introduza a opção que pretende. ");System.out.println("================================");System.out.println("R = :");intr=teclado.nextInt();System.out.println("R1 = :");intr1=teclado.nextInt();System.out.println("r2 = ");intr2=teclado.nextInt();System.out.println("r3 = ");intr3=teclado.nextInt();System.out.println("h = ");inth=teclado.nextInt();System.out.println("ab = ");intAb=teclado.nextInt();System.out.println("================================");System.out.println("Introduza a opção que pretende. ");System.out.println("================================");System.out.println("Opções: ");System.out.println("0 - Sair");System.out.println("1 - Volume da Esfera");System.out.println("2 - Volume da Elipse");System.out.println("3 - Volume da Pirâmide");System.out.println("4 - Volume do Cilindo");System.out.print("Opção escolhida: ");doublevolesfera=0;volesfera=(4*Math.PI*Math.pow(r,2)*r)/3;doublevolelipse=0;volelipse=(4*Math.PI*r1*r2*r3)/3;doublevolpirâmide=0;volpirâmide=(Ab*h)/3;doublevolcilindro=0;volcilindro=Math.PI*Math.pow(r,2)*h;intopcao=teclado.nextInt();System.out.println();switch(opcao){case0:System.out.println("Sair");break;case1:System.out.println(volesfera);break;case2:System.out.println(volelipse);break;case3:System.out.println(volpirâmide);break;case4:System.out.println(volcilindro);break;case'3':System.out.println("teste");default:System.err.println("Essa opção não é válida!");}System.out.println();}
}
Tenta isso.
B
blayd2015
o q vc fez foi atribuir a opção nas 6 variáveis e não o volume q é o esperado
B
Beatriz_Melro
então é suposto substituir o quê no código?
Campozoide1 like
Boa tarde colegas.
Sou iniciante, Não me crucifiquem plz. hehe.
Acho que um problema eh o fato de ter que digitar todos estes valores sempre. EU separaria todas estas formulas em classes distintas. Dai colocaria a parte do switch no Main. e cada case chamando o metodo da classe desejada. Outro conselho eh colocar todo scan dentro de um bloco Try Catch, pq o usuário é a fonte mais comum de erro né?
Se não estivesse no celular mandava um codigo editado de como eu faria.