오늘은 04 - 2장의 연습문제를 풀이해 보자.
반복문부터는 구문도 늘어나고 형태도 복잡해지기 때문에 04 - 2장의 예제를 꼼꼼하게 정리하고 넘어가도록 하자.
그럼 정리 시작!
중첩 반복문을 사용하는 피라미드
누적예제 1. 반쪽짜리 피라미드 만들기
내가 작성한 코드
자바스크립트에서 * 연산자는 다른 언어처럼 문자를 반복하는데 사용하는게 아니라 곱셈에 사용된다. 그렇기 때문에 console.log('*' * i) 이런식으로 코드를 작성하면 NaN이라는 오류가 발생한다.
자바스크립트에서 반복되는 문자로 문자열을 생성하려면 'repeat()' 메소드를 사용할 수 있다.
다만, 이와 같은 풀이법은 console.log를 여러번 사용하기 때문에 한번에 출력되지 않고 여러번에 나눠서 출력된다. 경우에 따라 오답으로 처리될 수도 있으니 repeat() 메소드만 알아두고 넘어가도록 하자.
소개된 코드
빈 문자열에 문자를 이어붙여 문자열을 만든다.
누적예제 2. 피라미드 만들기
내가 작성한 코드
누적예제 1과 같이 repeat() 메소드를 활용하여 풀이하였다. ' '(공백)이 출력되게 하기위해 console.log 안에 ' ' 과 '*' 를 문자열 연산자로 이어주었다. 마찬가지로 반쪽 자리 정답이다. repeat() 메소드만 알아두고 넘어가도록 하자.
소개된 코드
빈 문자열에 문자를 이어붙여 문자열을 만들고 문자열을 이어붙여 피라미드를 만드는 아이디어를 떠올리는게 핵심이다.
확인문제 3. 1부터 100까지의 숫자를 곱한 값을 계산하는 프로그램을 만들어보세요.
확인문제 4. 활용 예제의 피라미드를 활용해서 다이아몬드 모양의 피라미드를 만들어보세요.
실행결과
확인문제 4번은 교재의 코드와 내가 작성한 코드가 거의 똑같아서 딱히 정리할 내용은 없다. 중첩 반복문을 두 번 활용하는 것이 핵심이었다.
이상으로 04 - 2 장 연습문제 풀이를 마무리 하면 될 것 같다.
유명한 별찍기 문제를 몇 문제 풀어보았다. 간단한 유형만 풀어보았지만 덕분에 자바스크립트의 반복문에 조금더 익숙해 질 수 있었다.
내일은 3주차 미션을 해결해보자!
오늘 하루도 쌓였다.
'혼공학습단 11기(完)' 카테고리의 다른 글
[혼공스] 05 - 1 '함수의 기본 형태' 정리(1) (0) | 2024.01.17 |
---|---|
[혼공스] 3주차 미션 (0) | 2024.01.16 |
[혼공스] 04 - 2 '반복문' 정리 (0) | 2024.01.14 |
[혼공스] 04 - 1 '배열' 정리 (0) | 2024.01.13 |
[혼공스] 2주차 미션 (0) | 2024.01.12 |