2016-09-11 1 views
0

내가 배운 것을 테스트하기 위해 VBScript에서 간단한 계산기 프로그램을 만들고 있습니다. 사용자 (me)에게 연산자 (+, -, * 또는 /)에 대한 첫 번째 숫자와 두 번째 숫자에 대한 세 번째 입력 상자를 입력 할 수있는 입력 상자를 제공합니다. 3 개의 연산자 -, *, /는 단지 추가로 테스트 할 때 num1을 num2로 추가하는 것보다 concatinate하고, 나는 왜 그럴 수 없는지 잘 설명합니다. 다음은 내 코드입니다 :변수 대신에 concatinated가 추가됨

dim num1,num2,answer,operators 
num1 = inputbox("please enter your first number","calculator") 
operators = inputbox("please enter either +,-,* or /","calculator") 
num2 = inputbox("please enter your second number","calculator") 
'keep the above lines, above everything else 
Select Case operators 
     Case "+" 
     answer = (num1 + num2) 
     Case "-" 
     answer = (num1 - num2) 
     Case "*" 
     answer = (num1 * num2) 
     Case "/" 
     answer = (num1/num2) 
     case else 
msgbox("please enter a valid operator") 
End Select 
msgbox answer 

그래서 출력은 내가 말할 경우 6 + 7 내가 말 대신의 시작 '= 답을'퍼팅 시도 67 하지만 그것은 '예상 한 Statment'가 발생합니다 오류.

왜 이런 이유가 발생합니까?

답변

2

Inputbox는 "1"+ "2"= "12"라는 문자열을 반환합니다. 시도해보십시오 :

answer = (CInt(num1) + Cint(num2)) 

자세한 유형 변환 기능은 here입니다.