c cannot be resolved to a variable

Java

28/07/2017

Olá, galerinha!

Sou novo por aqui e estou com um probleminha...
Estou tentando rodar um programa que retorna este erro: "c cannot be resolved to a variable".

O código-fonte é:

-------------------------------------------------------------------------------------------------------------------------------------------
import java.util.Scanner;

public class Earth {

public static int soma(int a, int b){
return a+b;
}

public static int sub(int a, int b){
return a-b;
}

public static int div(int a, int b){
return a/b;
}

public static int mult(int a, int b){
return a*b;
}

public static void main(String[] args) {
int a;
int b;
int op;
Scanner d = new Scanner(System.in);
Scanner e = new Scanner(System.in);

System.out.println("Você deseja:\\n\\na)Soma: digite 1;\\nb)Subtração: digite 2;"
+ "\\nc)Dividir: digite 3;\\nd)Multiplicar: digite 4.");
op = d.nextInt();

System.out.println("Digite o primeiro número: ");
a = e.nextInt();

System.out.println("Digite o segundo número: ");
b = e.nextInt();

if(op==1){
double c = soma(a, b);
}

else if(op==2){
double c = sub(a, b);
}

else if(op==3){
double c = div(a, b);
}

else if(op==4){
double c = mult(a, b);
}

else{
System.out.println("Opção inválida!");
}

System.out.println(c);
}
}
-------------------------------------------------------------------------------------------------------------------------------------------
Jair Neto

Jair Neto

Curtidas 0

Respostas

Victor Machado

Victor Machado

28/07/2017

Opa Jair.

Esse problema ocorre porque você está definindo a variável c dentro de um if, então ela só pode ser acessada dentro do escopo do if.
Para resolver isso basta você criar essa variável fora do if, junto com as variaveis "int a; int b; int op;".
GOSTEI 0
POSTAR