2013-05-06 9 views
-2

while 루프 invariant 알고리즘은 무엇입니까?
예를 들어 , 하나 buyObject하지 않을있는 조건은 무엇 while 루프 알고리즘 while

while(object.width()<=15 && object.color()!=blue || object.material==green) 
    buyObject(object) 

?

+1

&&는 우선 순위가 높습니다. 즉, 조건이'(object.width() <= 15 && object.color()! = blue) || object.material == green' (나는 약간의 공간을 추가하는 자유를 가졌습니다) 잠시 그것에 대해 생각해보십시오. 정말 그렇게 어렵지 않습니다. –

+0

object.width = 16 && object.color = blue – ProfessionalAmateur

+3

'while' 표현식이 거짓 일 때'buyObject'를 쓰지 않습니다. –

답변

0

while의 표현식이 거짓 일 때까지 루프가 계속됩니다. 조건이 식이다 object.width() <= 15 && object.color() != blue || object.material==green

그 표현이 거짓의 경우, 어느 허위 할 OR (||)의 두 조건을 필요 :

object.width() <= 15 && object.color() != blue

object.material==green.

두 번째가 틀리면 무엇이 필요한지 분명합니다. 처음 내용으로 선택되는 두 가지 조건 중 하나 (&&)가있는 허위 필요 :

object.width() <= 15

object.color() != blue

.

여기에서 루프 정지를 만드는 조건을 찾는 것이 쉬워야합니다.

+0

false 조건으로 (object.width> 15 || object.color() == blue && object.material! = green) 사용하면 어떤 종류의 괄호가 필요합니까? – user1569897

+0

Sebastian Redl이 작성한 질문에 대한 답변을 확인하십시오. –

+0

그래서 기본은 &&의 우선 순위이기 때문에 첫 번째 조건, 즉 ((object.width> 15 || object.color() == blue) && object.material == green)을 대괄호로 묶어야합니다. – user1569897