2013-05-31 5 views
-3
가 작동하지 않습니다 나는이 다음 코드 도움이 필요

:런타임 오류 : '부울'를 입력하는 문자열 "Y"에서 변환이 유효하지 않습니다

VB.NET에서
Do While answer = "Y" Or "y" 
     num = "0" 
     Console.WriteLine("Enter number") 
     num = Console.ReadLine 
     total = total + num 
     Console.WriteLine("Do you want to continue Y/N") 
     answer = Console.ReadLine 
    Loop 
+4

질문하기 전에 [철저한 답변 검색] (http://stackoverflow.com/search)을 해보았습니까? 귀하의 연구를 공유하는 것은 모든 사람들을 돕습니다. 귀하가 발견 한 내용과 귀하의 필요를 충족시키지 못한 이유를 저희에게 알려주십시오. 이것은 당신이 자신을 도우려고 시간을 투자했음을 보여줍니다. 명백한 답을 반복하지 않아도되며, 무엇보다도보다 구체적이고 관련성있는 답변을 얻을 수 있습니다. [How to Ask] (http://stackoverflow.com/questions/how-to-ask), [무엇을 시도 했습니까?] (http://whathaveyoutried.com) 및 [무엇이 좋은 질문입니까?] (http://tinyurl.com/so-hints) –

+0

@DanPichelman 예 답변을 철저하게 검색 했으므로이 질문을 게시 한 이유를 찾을 수 없습니다. – Logan

+2

"작동하지 않음"을 정의하십시오. –

답변

5

, 논리 및 비트 연산자 하부 비교 연산자보다 우선하므로

Do While answer = "Y" or "y" 

요청을 상기 제 1 C의

Do While (answer = "Y") or "y" 

요청과 동일 이 문자열, 그래서 문장이 이해가되지 않습니다 - ondition, answer = "Y" 두 번째 조건, "y" 사실도 거짓도 아닌, 참 또는 거짓이 될 수 있습니다.

두 번째 테스트에 변수 테스트를 포함해야한다. 이처럼 :

Do While answer = "Y" Or answer = "y" 

answer = "y"은 표현식이 참인지 아닌지 처리 여부 컴파일러에 의해 True 또는 False으로 해석됩니다. "내 answer 변수 안에 값 y인가?"

그것은 묻는 것과 같다

바로 지금 수행하고있는 것처럼 y을 부울 (True 또는 False)로 변환하려고하면 얻는 것과 같은 변환 오류가 발생합니다.

관련 문제