2013-12-21 3 views

답변

4

C#에서는이 작업을 수행 할 수 없습니다.

과 같이 수행

if (1 <= value && value <= 20) 

문제는 double 아니다, 문제는 구문이 올바르지이다.

+0

구문이 잘못되지 않았으므로 원하는 내용이 아닙니다. – user3038092

1

문제점 : 두 개의 표현식을 결합하지 않고 확인할 수 없습니다.

솔루션 : 난 당신이 value 여부를 확인하려는 생각1 and 20

당신은 논리적 사용할 수 있습니다

이 시도이

를 확인하기위한 && 운영자 beteween에 있습니다

if (value >= 1 && value <= 20) 
{ 

} 
1

1 <= value evaluates out to be bool을 (값이 1보다 작은 경우 거짓이고 그렇지 않으면 거짓).

그래서 (true <= 20) or (false <=20)으로 평가되며 오류 상태는 연산자 <=을 사용하여 bool과 double을 비교할 수 없음을 분명히 나타냅니다.

if (1 <= value && value <= 20) 
{ 
} 
+0

@Downvoter - 관심있는 댓글? –

+1

정말해야하나요? 첫 번째 대답은 잘못되었습니다. 당신은 더 나은 것을 게시하기 위해 다른 답변으로부터 배웠습니다. –

+0

@ L.B - 게시 후 즉시 코드에 문제가 있음을 알았습니다. 그래서, 나는 대답에 더 많은 가치를 추가하기 위해 그것을 삭제하지만 당신이 이것을 좋아하지 않는다고 생각합니다. 문제 없음. –

4

당신에게 :

당신이 필요로하는

과 (& &) 연산자는 비교를 할 수

(1 <= value) <= 20 

그래서 처음 1과 비교됩니다

로 해석됩니다

if (1 <= value <= 20) 
{ 

} 

value이고 forme r은 후자보다 작거나 같다. 그것은 부울을 제공합니다. 그 부울 True 또는 False는 <=에서 20으로 비교됩니다. 그러나 True/False가 20보다 작거나 같으면 C#에서 질문 할 수 없습니다.

관련 문제