Desculpa pela demora, rsrs mas o codigo desse sisteminha atualmente tá assim!
[code]/**
-
@author Gustavo Girardon
-
@version 1.0 Total Flex
*/
import java.util.*;
public class ExercicioQuatro {
/**
* @param args
*/
public static void main(String[] args) {
int n = 0;
int ac = 0;
int op = 0;
int Nv = 0;
//Escolha do nível de dificuldade da pergunta!
System.out.println("Informe o nível desejado (1=fácil,2=médio,3=difícil)?");
Scanner teclado = new Scanner(System.in);
Nv = Integer.parseInt(teclado.nextLine());
System.out.println("Iniciado em nível "+Nv);
//Escolha do tipo de operação
System.out.println("QUal o tipo de operação? (1: Multiplicação, 2: Divisão, 3: Adição, 4: Subtração)");
Scanner tec = new Scanner(System.in);
op = Integer.parseInt(tec.nextLine());
if(op==1){ System.out.println("Você Escolheu: Multiplicação");}
if(op==2){ System.out.println("Você Escolheu: Divisão");}
if(op==3){ System.out.println("Você Escolheu: Adição");}
if(op==4){ System.out.println("Você Escolheu: Subtração");}
//ínicio do if para multiplicação
if(op==1)
{
do{
//Nível 1
if (Nv==1)
{
//sorteia numero 1
int nivel11 = 1 + (int) (Math.random()*10);
int nivel12 = 1 + (int) (Math.random()*10);
//fim sorteio
System.out.println("Quanto é "+nivel11+" x "+nivel12+"?");
Scanner nvl1 = new Scanner(System.in);
int nivl1 = Integer.parseInt(nvl1.nextLine());
if(nivl1==nivel11*nivel12)
{//inicio se esteja certa a resposta
ac = ac+1;
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Muito bem!");
break;
case 2:
System.out.println("Excelente");
break;
case 3:
System.out.println("Bom trabalho!");
break;
case 4:
System.out.println("Certo. Continue assim!");
break;
}//fim do case
}//FIM se esteja certa a resposta
else
{//Se a resposta estiver errada
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Nao. Tente novamente, por favor.");
break;
case 2:
System.out.println("Errado. Tente mais uma vez.");
break;
case 3:
System.out.println("Nao desista!!");
break;
case 4:
System.out.println("Nao. Continue tentando.");
break;
}//fim case
}//Fim se a resposta estiver errada
} //Fim nível 1
//Nível 2
if (Nv==2)
{
//sorteia numero 2
int nivel21 = 1 + (int) (Math.random()*100);
int nivel22 = 1 + (int) (Math.random()*100);
//fim sorteio
System.out.println("Quanto é "+nivel21+" x "+nivel22+"?");
Scanner nvl2 = new Scanner(System.in);
int nivl2 = Integer.parseInt(nvl2.nextLine());
if(nivl2==nivel21*nivel22)
{//inicio se esteja certa a resposta
ac = ac+1;
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Muito bem!");
break;
case 2:
System.out.println("Exelente");
break;
case 3:
System.out.println("Bom trabalho!");
break;
case 4:
System.out.println("Certo. Continue assim!");
break;
}//fim do case
}//FIM se esteja certa a resposta
else//Se a resposta estiver errada
{
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Nao. Tente novamente, por favor.");
break;
case 2:
System.out.println("Errado. Tente mais uma vez.");
break;
case 3:
System.out.println("Nao desista!!");
break;
case 4:
System.out.println("Nao. Continue tentando.");
break;
}//fim case
}//Fim se a resposta estiver errada
}
//Fim nível 2
//Nível 3
if (Nv==3)
{
//sorteia os números
int nivel31 = 1 + (int) (Math.random()*1000);
int nivel32 = 1 + (int) (Math.random()*1000);
//fim sorteio
System.out.println("Quanto é "+nivel31+" x "+nivel32+"?");
Scanner nvl3 = new Scanner(System.in);
int nivl3 = Integer.parseInt(nvl3.nextLine());
if(nivl3==nivel31*nivel32)
{//inicio se esteja certa a resposta
ac = ac+1;
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Muito bem!");
break;
case 2:
System.out.println("Exelente");
break;
case 3:
System.out.println("Bom trabalho!");
break;
case 4:
System.out.println("Certo. Continue assim!");
break;
}//fim do case
}//FIM se esteja certa a resposta
else//Se a resposta estiver errada
{
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Nao. Tente novamente, por favor.");
break;
case 2:
System.out.println("Errado. Tente mais uma vez.");
break;
case 3:
System.out.println("Nao desista!!");
break;
case 4:
System.out.println("Nao. Continue tentando.");
break;
}//fim case
}//Fim se a resposta estiver errada
}
//Fim nível 3
n = n+1;
}while(n<=9);
}
////////////////////////////////FIM MULTIPLICAÇÃO//////////////////////////////
//////////////////////////////////////////////DIVISÃO///////////////////////////////////////////////
if(op==2)
{
do{
//Nível 1
if (Nv==1)
{
//sorteia numero 1
int nivel11 = 1 + (int) (Math.random()*10);
int nivel12 = 1 + (int) (Math.random()*10);
//fim sorteio
System.out.println("Quanto é "+nivel11+" / "+nivel12+"?");
Scanner nvl1 = new Scanner(System.in);
int nivl1 = Integer.parseInt(nvl1.nextLine());
if(nivl1==nivel11/nivel12)
{//inicio se esteja certa a resposta
ac = ac+1;
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Muito bem!");
break;
case 2:
System.out.println("Exelente");
break;
case 3:
System.out.println("Bom trabalho!");
break;
case 4:
System.out.println("Certo. Continue assim!");
break;
}//fim do case
}//FIM se esteja certa a resposta
else//Se a resposta estiver errada
{
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Nao. Tente novamente, por favor.");
break;
case 2:
System.out.println("Errado. Tente mais uma vez.");
break;
case 3:
System.out.println("Nao desista!!");
break;
case 4:
System.out.println("Nao. Continue tentando.");
break;
}//fim case
}//Fim se a resposta estiver errada
}
//Fim nível 1
//Nível 2
if (Nv==2)
{
//sorteia numero 2
int nivel21 = 1 + (int) (Math.random()*100);
int nivel22 = 1 + (int) (Math.random()*100);
//fim sorteio
System.out.println("Quanto é "+nivel21+" / "+nivel22+"?");
Scanner nvl2 = new Scanner(System.in);
int nivl2 = Integer.parseInt(nvl2.nextLine());
if(nivl2==nivel21/nivel22)
{//inicio se esteja certa a resposta
ac = ac+1;
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Muito bem!");
break;
case 2:
System.out.println("Exelente");
break;
case 3:
System.out.println("Bom trabalho!");
break;
case 4:
System.out.println("Certo. Continue assim!");
break;
}//fim do case
}//FIM se esteja certa a resposta
else//Se a resposta estiver errada
{
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Nao. Tente novamente, por favor.");
break;
case 2:
System.out.println("Errado. Tente mais uma vez.");
break;
case 3:
System.out.println("Nao desista!!");
break;
case 4:
System.out.println("Nao. Continue tentando.");
break;
}//fim case
}//Fim se a resposta estiver errada
}
//Fim nível 2
//Nível 3
if (Nv==3)
{
//sorteia os números
int nivel31 = 1 + (int) (Math.random()*1000);
int nivel32 = 1 + (int) (Math.random()*1000);
//fim sorteio
System.out.println("Quanto é "+nivel31+" / "+nivel32+"?");
Scanner nvl3 = new Scanner(System.in);
int nivl3 = Integer.parseInt(nvl3.nextLine());
if(nivl3==nivel31/nivel32)
{//inicio se esteja certa a resposta
ac = ac+1;
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Muito bem!");
break;
case 2:
System.out.println("Exelente");
break;
case 3:
System.out.println("Bom trabalho!");
break;
case 4:
System.out.println("Certo. Continue assim!");
break;
}//fim do case
}//FIM se esteja certa a resposta
else//Se a resposta estiver errada
{
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Nao. Tente novamente, por favor.");
break;
case 2:
System.out.println("Errado. Tente mais uma vez.");
break;
case 3:
System.out.println("Nao desista!!");
break;
case 4:
System.out.println("Nao. Continue tentando.");
break;
}//fim case
}//Fim se a resposta estiver errada
}
//Fim nível 3
n = n+1;
}while(n<=9);
}
////////////////////////////////FIM DIVISÃO//////////////////////////////
//////////////////////////////////////////////ADIÇÃO///////////////////////////////////////////////
if(op==3)
{
do{
//Nível 1
if (Nv==1)
{
//sorteia numero 1
int nivel11 = 1 + (int) (Math.random()*10);
int nivel12 = 1 + (int) (Math.random()*10);
//fim sorteio
System.out.println("Quanto é "+nivel11+" + "+nivel12+"?");
Scanner nvl1 = new Scanner(System.in);
int nivl1 = Integer.parseInt(nvl1.nextLine());
if(nivl1==nivel11+nivel12)
{//inicio se esteja certa a resposta
ac = ac+1;
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Muito bem!");
break;
case 2:
System.out.println("Exelente");
break;
case 3:
System.out.println("Bom trabalho!");
break;
case 4:
System.out.println("Certo. Continue assim!");
break;
}//fim do case
}//FIM se esteja certa a resposta
else//Se a resposta estiver errada
{
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Nao. Tente novamente, por favor.");
break;
case 2:
System.out.println("Errado. Tente mais uma vez.");
break;
case 3:
System.out.println("Nao desista!!");
break;
case 4:
System.out.println("Nao. Continue tentando.");
break;
}//fim case
}//Fim se a resposta estiver errada
}
//Fim nível 1
//Nível 2
if (Nv==2)
{
//sorteia numero 2
int nivel21 = 1 + (int) (Math.random()*100);
int nivel22 = 1 + (int) (Math.random()*100);
//fim sorteio
System.out.println("Quanto é "+nivel21+" + "+nivel22+"?");
Scanner nvl2 = new Scanner(System.in);
int nivl2 = Integer.parseInt(nvl2.nextLine());
if(nivl2==nivel21+nivel22)
{//inicio se esteja certa a resposta
ac = ac+1;
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Muito bem!");
break;
case 2:
System.out.println("Exelente");
break;
case 3:
System.out.println("Bom trabalho!");
break;
case 4:
System.out.println("Certo. Continue assim!");
break;
}//fim do case
}//FIM se esteja certa a resposta
else//Se a resposta estiver errada
{
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Nao. Tente novamente, por favor.");
break;
case 2:
System.out.println("Errado. Tente mais uma vez.");
break;
case 3:
System.out.println("Nao desista!!");
break;
case 4:
System.out.println("Nao. Continue tentando.");
break;
}//fim case
}//Fim se a resposta estiver errada
}
//Fim nível 2
//Nível 3
if (Nv==3)
{
//sorteia os números
int nivel31 = 1 + (int) (Math.random()*1000);
int nivel32 = 1 + (int) (Math.random()*1000);
//fim sorteio
System.out.println("Quanto é "+nivel31+" + "+nivel32+"?");
Scanner nvl3 = new Scanner(System.in);
int nivl3 = Integer.parseInt(nvl3.nextLine());
if(nivl3==nivel31+nivel32)
{//inicio se esteja certa a resposta
ac = ac+1;
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Muito bem!");
break;
case 2:
System.out.println("Exelente");
break;
case 3:
System.out.println("Bom trabalho!");
break;
case 4:
System.out.println("Certo. Continue assim!");
break;
}//fim do case
}//FIM se esteja certa a resposta
else//Se a resposta estiver errada
{
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Nao. Tente novamente, por favor.");
break;
case 2:
System.out.println("Errado. Tente mais uma vez.");
break;
case 3:
System.out.println("Nao desista!!");
break;
case 4:
System.out.println("Nao. Continue tentando.");
break;
}//fim case
}//Fim se a resposta estiver errada
}
//Fim nível 3
n = n+1;
}while (n<9);
}
////////////////////////////////FIM ADIÇÃO//////////////////////////////
//////////////////////////////////////////////SUBTRAÇÃO///////////////////////////////////////////////
if(op==4)
{
do{
//Nível 1
if (Nv==1)
{
//sorteia numero 1
int nivel11 = 1 + (int) (Math.random()*10);
int nivel12 = 1 + (int) (Math.random()*10);
//fim sorteio
System.out.println("Quanto é "+nivel11+" - "+nivel12+"?");
Scanner nvl1 = new Scanner(System.in);
int nivl1 = Integer.parseInt(nvl1.nextLine());
if(nivl1==nivel11-nivel12)
{//inicio se esteja certa a resposta
ac = ac+1;
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Muito bem!");
break;
case 2:
System.out.println("Exelente");
break;
case 3:
System.out.println("Bom trabalho!");
break;
case 4:
System.out.println("Certo. Continue assim!");
break;
}//fim do case
}//FIM se esteja certa a resposta
else//Se a resposta estiver errada
{
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Nao. Tente novamente, por favor.");
break;
case 2:
System.out.println("Errado. Tente mais uma vez.");
break;
case 3:
System.out.println("Nao desista!!");
break;
case 4:
System.out.println("Nao. Continue tentando.");
break;
}//fim case
}//Fim se a resposta estiver errada
}
//Fim nível 1
//Nível 2
if (Nv==2)
{
//sorteia numero 2
int nivel21 = 1 + (int) (Math.random()*100);
int nivel22 = 1 + (int) (Math.random()*100);
//fim sorteio
System.out.println("Quanto é "+nivel21+" - "+nivel22+"?");
Scanner nvl2 = new Scanner(System.in);
int nivl2 = Integer.parseInt(nvl2.nextLine());
if(nivl2==nivel21-nivel22)
{//inicio se esteja certa a resposta
ac = ac+1;
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Muito bem!");
break;
case 2:
System.out.println("Exelente");
break;
case 3:
System.out.println("Bom trabalho!");
break;
case 4:
System.out.println("Certo. Continue assim!");
break;
}//fim do case
}//FIM se esteja certa a resposta
else//Se a resposta estiver errada
{
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Nao. Tente novamente, por favor.");
break;
case 2:
System.out.println("Errado. Tente mais uma vez.");
break;
case 3:
System.out.println("Nao desista!!");
break;
case 4:
System.out.println("Nao. Continue tentando.");
break;
}//fim case
}//Fim se a resposta estiver errada
}
//Fim nível 2
//Nível 3
if (Nv==3)
{
//sorteia os números
int nivel31 = 1 + (int) (Math.random()*1000);
int nivel32 = 1 + (int) (Math.random()*1000);
//fim sorteio
System.out.println("Quanto é "+nivel31+" - "+nivel32+"?");
Scanner nvl3 = new Scanner(System.in);
int nivl3 = Integer.parseInt(nvl3.nextLine());
if(nivl3==nivel31-nivel32)
{//inicio se esteja certa a resposta
ac = ac+1;
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Muito bem!");
break;
case 2:
System.out.println("Exelente");
break;
case 3:
System.out.println("Bom trabalho!");
break;
case 4:
System.out.println("Certo. Continue assim!");
break;
}//fim do case
}//FIM se esteja certa a resposta
else//Se a resposta estiver errada
{
int resposta = 1 + (int) (Math.random()*4);
switch (resposta) {//começa o case
case 1:
System.out.println("Nao. Tente novamente, por favor.");
break;
case 2:
System.out.println("Errado. Tente mais uma vez.");
break;
case 3:
System.out.println("Nao desista!!");
break;
case 4:
System.out.println("Nao. Continue tentando.");
break;
}//fim case
}//Fim se a resposta estiver errada
}
//Fim nível 3
n = n+1;
}while (n<9);
}////////////////////////////////FIM SUBTRAÇÃO//////////////////////////////
System.out.println("Total de acertos: "+ac+" de "+10);
if(ac<75)
{
System.out.println("Por favor, solicite ajuda extra ao professor, pois você teve um aproveitamento de "+ac*10+"%");
}
}//fim main
}
[/code]
Sei que ele poderia ser bem menor, mas devido a falta de conhecimento não consegui dar uma resumida nele para fazer a mesma coisa!
Dicas para encurtar esse menino ou para acrescentar algo?