Problemas com variavéis e if e else

2 respostas
O

Olá o pessoal! :lol:

Sou iniciante em programação, e estou começando em java. Estou com um problema no método main do programa. dêem uma olhada, por favor!
public class UsandoCalculadora
{
   

    public static void main (String[] args) 
    {

        Teclado t = new Teclado();
        CalculadoraSimples c1 = new CalculadoraSimples();
        
      
        int codigo = t.leInt("Insira um código");
        int num;    
        int num2; 
        int r;
        
            if (codigo == 1){
                num = t.leInt("digite um inteiro");
                num2 = t.leInt("digite um inteiro");}
            
            if (num < 0 || num2 < 0){
               System.out.println("NEGATIVO");}
            
            if (num2 != 0){
                r = c1.resto(num, num2);
                System.out.println("o resto é:" + r);}
            else {System.out.println("a multiplicação do primeiro inteiro por 3 é:" + num*3);}
                 
            
            if (codigo == 2)
                num = t.leInt("digite um inteiro");
            
            if (num > 0)   
            System.out.println("o próximo número intero:" + num+1);
                        
            //continua aki com mais comandos.
                    
                    
        }
            
}

bem, agora vamos as duvidas:

1- Se eu tento compilar ele assim, ele acusa variable num might not have been initialized; Portanto se eu atribuo = 0 para elas, então o programa não acusa esse erro, porém com ele inicializada em 0, acarreta um erro nos processos dos ifs.

O mais estranho que em outros métodos que eu crei, por exemplo nos metodos da CalculadoraSimples, eu não precisei atribuir nada para a variável que foi criada.

Se alguém puder ajudar, esclarecendo esse mistério e dando dicas, (lembrando que só posso trabalhar com ifs-elses já que é um trabalho pra faculdade) eu ficarei mto agradecido.

Grato pela atenção, Osoriense :D

2 Respostas

thiago.correa

Bom, variáveis declaradas dentro de métodos sempre devem ser inicializadas. Um solução seria logo de cara ler os valores para a sua variável num e num2, por que como está não está sendo atribuído nenhum valor a elas! Faça como você fez com a variável código!

fabiel

Inton cara

O negocio é sempre declarar as variveis antes de usa-lsa.

Uma outra dica é usar o

num = Integer.parseInt(JOptionPane.showInputDialog("Digite valor"));

é mais claro e facil qualquer coisa é so postar a duvida

espero ter ajudado

Criado 31 de março de 2007
Ultima resposta 31 de mar. de 2007
Respostas 2
Participantes 3