2016-11-13 13 views
0

私は学校のプロジェクト用の電卓を作成しようとしていますが、何らかの理由でコンパイルしようとすると問題があると言います。基本的な電卓ヘルプJava

 atimesb = (inputA * inputB); 
    adividedbyb = (inputA/inputB); 
    aplusb = (inputA + inputB); 
    aminusb = (inputA - inputB); 

が間違っている:「 - - inputAは は を初期化されていない可能性があり、ローカル変数ローカル変数INPUTBは 初期化されていない可能性があり、この行 で複数のマーカー」は、この部分で、私はエラーを取得しています。

import java.util.Scanner; 
public class Calculator { 

    public static void main(String[] args) { 

     int inputA; 
     int inputB; 
     int atimesb; 
     int adividedbyb; 
     int aplusb; 
     int aminusb; 
     atimesb = (inputA * inputB); 
     adividedbyb = (inputA/inputB); 
     aplusb = (inputA + inputB); 
     aminusb = (inputA - inputB); 

     String operation; 

     Scanner in = new Scanner(System.in); 

     System.out.println("Enter the first number"); 
     inputA = in.nextInt(); 

     System.out.println("Enter the operation"); 
     operation = in.next(); 

     System.out.println("Enter the second number"); 
     inputB = in.nextInt(); 



     if (operation.equals ("+")) 
     { 
      System.out.println(inputA + " + " + inputB + "=" + aplusb); 
     } 
     if (operation.equals ("-")) 
     { 
      System.out.println(inputA + " - " + inputB + "=" + aminusb); 
     } 
     if (operation.equals ("/")) 
     { 
      System.out.println(inputA + "/" + inputB + "=" + adividedbyb); 
     } 
     if (operation.equals ("*")) 
     { 
      System.out.println(inputA + " * " + inputB + "=" + atimesb); 
     } 
     if (operation.equals ("add")) 
     { 
      System.out.println(inputA + " * " + inputB + "=" + aplusb); 
     } 
     if (operation.equals ("subtract")) 
     { 
      System.out.println(inputA + " - " + inputB + "=" + aminusb); 
     } 
     if (operation.equals ("divide")) 
     { 
      System.out.println(inputA + "/" + inputB + "=" + adividedbyb); 
     } 
     if (operation.equals ("multiply")) 
     { 
      System.out.println(inputA + " * " + inputB + "=" + atimesb); 
     } 


} 
} 

誰かが私を助けてくれたら本当にありがたいです。

+0

他の人の助けになるので、あなたが得ている完全なエラーを含めてください。 [良い質問をするにはどうすればいいですか]を参照してください。 – CmdrSharp

+0

直面しているエラーの詳細を追加してください。エラートレースをここにコピーして貼り付けます。 – maheeka

+0

数値を慎重に分割するときは、2つの整数を掛け合わせること(加算や減算とは違って)で、整数ではなく(潜在的に)終わることになるので、結果をフロートとして保存する必要があります。 –

答えて

2

使用する前に値を読み取る必要があります。 このように:

 System.out.println("Enter the first number"); 
    inputA = in.nextInt(); 

    System.out.println("Enter the operation"); 
    operation = in.next(); 

    System.out.println("Enter the second number"); 
    inputB = in.nextInt(); 

    atimesb = (inputA * inputB); 
    adividedbyb = (inputA/inputB); 
    aplusb = (inputA + inputB); 
    aminusb = (inputA - inputB); 
+0

ありがとうBijay !!!今のところ – Blake

+1

ようこそ。なぜそれが機能していないのか理解してくれることを願っています。 –

関連する問題