2016-10-03 40 views
-2

我想在VisualBasics控制檯應用程序上做一個計算器,它將允許用戶添加和減去。我已經想出瞭如何允許從用戶輸入的數字添加,但我給了一個選項,詢問用戶他們想要使用什麼操作。但是,當用戶使用 - 符號時,它不會輸出對輸入的兩個數字的答案的結果。計算器 - 如果聲明錯誤

我用了一個elseif語句,因爲我認爲當讀取這行時,如果輸入了「 - 」,那麼程序將不會添加這兩個數字,但現在將它們帶走。請問有人可以向我解釋爲什麼它不允許我選擇第二個選項並將兩個數字相互分開?

Module Module1 

    Sub Main() 

     Console.WriteLine("Please enter the first number:") 
     Dim num1 As Double = Console.ReadLine() 
     Console.WriteLine("First number:" & num1) 

     Console.WriteLine("Please enter the second number:") 
     Dim num2 As Double = Console.ReadLine() 
     Console.WriteLine("Second Number:" & num2) 

     Console.Write("what operand do you want to use: +,-,:") 
     If Console.ReadLine = "+" Then 
      Console.WriteLine("The numbers added is:" & num1 + num2) 
     ElseIf Console.ReadLine = "-" Then 
      Console.WriteLine("The numbers subtracted is:" & num1 - num2) 
     End If 
     Console.ReadLine() 

    End Sub 

End Module 
+0

試着編輯你的問題... – Reddy

+1

因爲你只有一個可用的字符,因此你不能調用兩次'Console.ReadLine'。考慮你正在編寫的代碼。很明顯,您只需要調用一次'Console.ReadLine',將輸入保存到一個變量中,然後根據該變量中的內容決定要執行什麼操作。 –

+0

在文件頂部設置「Option Strict On」。刪除編譯器錯誤。 –

回答

1
If Console.ReadLine = "+" Then 
    Console.WriteLine("The numbers added is:" & num1 + num2) 
ElseIf Console.ReadLine = "-" Then 
    Console.WriteLine("The numbers subtracted is:" & num1 - num2) 
End If 

大聲朗讀:

讀取一行。如果它是'+',則打印結果。否則讀一行。如果它是「 - 」,則打印結果。

您需要將第一個ReadLine的結果存儲在變量中並在兩次比較中使用它們。