Baseball

차노·2023년 8월 15일
0

먼저 넘버라는 배열을 만들어준다.

그 넘버의 index 0번째에 무작위 함수를 넣어 준다. => Math.random()의 기본값은 소수점의 형태(0.1 ~ 0.9)로 나온다. 그래서 그 수에 10을 곱해 일의 자리를 만들고, Math.floor() 함수를 이용하여 소수점을 털어낸다. 그래서 나올 수 있는 값은 0~9 까지이다.

'do-while'문을 사용하여 해당 조건이 유지되는 동안('while') 'do' block에서 해당 구문을 실행한다.

첫번째 조건은 넘버의 인덱스 0과 1이 같을 동안 해당 구문을 실행한다.

This means that 인덱스 0과 1이 같지 않으면 다음 구문으로 넘어간다.

넘버 인덱스 1의 최종값은 인덱스 0과는 다른 숫자가 찍힐 것이다.

인덱스 2도 마찬가지의 논리를 가지고 수행한다.

스트라이크 수, 볼 수, 인풋 넘버를 각각 0으로 선언한다.

와일 트루 조건문에서 첫 alert는 prompt의 parameter이고, 하위 조건 if 문에서 0을 넣었을 때 해당 실행문은 종료가 된다.

와일 조건문에서 for 함수를 사용해서 인덱스별로 if문을 이용해 비교한 다음, 충족될 경우 strikecnt 인자에 +를 해주고, 또 그 하위 포 문에서 또 다른 인덱스를 if문을 이용해 순서가 다른데, 숫자는 일치하면 볼에 수를 더한다. 위 조건은 수와 순서가 일치할 경우 스트라이크 수를 올린다.

그리고 스트라이크가 3이 되었을 때 스트라이크 아웃이라는 표시를 날리고 실행을 종료한다.

그 반대의 경우 해당 조건의 스트라이크 수와 볼의 수를 보여준다. 그리고 마지막에서 exit를 보여주며 나간다.

Conclusion

'do-while' 문을 쓸 때 'do'문이 실행되고 'while'문의 조건 안 에서 'do'문이 반복실행된다. 그리고 해당 조건이 아닐 경우 다음 조건 문으로 이동하거나 exit한다.

Reference

0개의 댓글