[20221110] 자바스크립트 혼공스 반복문 연습문제 (항해99 프리온보딩 4일차)

2022. 11. 10. 18:59·TIL

혼공스 연습문제

1. 1부터 100까지 숫자를 곱한 값을 계산하는 프로그램 만들기 (p 192)

<script>
    let output = 1

    for (i = 1; i <= 100; i++) {
        output *= i
    }
    console.log(`1~100의 숫자를 모두 곱하면, ${output}입니다.`)
</script>

"*="을 사용하여 보다 간결히 사용해서 좋다.

출력 결과

 

2. 중첩 반복문을 사용하여 피라미드 만들기

<script>    
    let output = ''
    const size = 5
	
    // 위쪽
    for (let i = 1; i <= size ; i++) {
        for (let j = size; j > i; j--) {
            output += ' '
        }
        for (let k = 0; k < 2 * i - 1; k++) {
            output += '*'
        }
        output += '\n'
    }

	// 아래쪽
    for (let i = size - 1; i > 0; i--) {
        for (let j = size; j > i; j--) {
            output += ' '
        }
        for (let k = 0; k < 2 * i - 1; k++) {
            output += '*'
        }
        output += '\n'
    }
    console.log(output)
</script>

출력 결과

내가 처음에 풀었던 방식과 답지의 방식을 비교했을 때, 답지의 방식이 좀 더 효율적이고 명확한 느낌이 들어 답지의 해설을 분석해보았다. 첫번째 for문에 중첩되어있는 두번째 for문의 경우, 공백과 *을 그려내는 규칙이다. 즉 할당되는 i값이 무엇이냐에 따라, i값이 크냐 작냐에 따라 똑같은 규칙으로 공백과 *을 일관되게 그려내게 된다. 그렇다면  i값을 1로 잡고 점점 키워나가거나, i값을 최대값인 size로 잡고 점점 줄어드는 방식으로 하여 공백과 *을 점점 커지게 할지, 줄어들게 할지 그려낼 수 있다.

'TIL' 카테고리의 다른 글

[20221125] 항해99 주특기 리액트 첫날🍁(feat. 코딩애플 리액트 강의)  (0) 2022.11.25
[20221112] 자바스크립트 함수에 대한 고찰 (feat. 항해99 프리온보딩 6일차)  (0) 2022.11.12
[20221111] 자바스크립트 혼공스 함수 연습문제 (feat. 항해99 프리온보딩 5일차)  (0) 2022.11.11
[20221108] 자바스크립트 if, switch 조건문 (feat. 항해99 프리온보딩 2일차)  (2) 2022.11.07
[20221107] 자바스크립트 기초 문법 (feat. 항해99 프리온보딩 1일차)  (0) 2022.11.07
'TIL' 카테고리의 다른 글
  • [20221112] 자바스크립트 함수에 대한 고찰 (feat. 항해99 프리온보딩 6일차)
  • [20221111] 자바스크립트 혼공스 함수 연습문제 (feat. 항해99 프리온보딩 5일차)
  • [20221108] 자바스크립트 if, switch 조건문 (feat. 항해99 프리온보딩 2일차)
  • [20221107] 자바스크립트 기초 문법 (feat. 항해99 프리온보딩 1일차)
youjeong_choi
youjeong_choi
  • youjeong_choi
    youjeong
    youjeong_choi
  • 전체
    오늘
    어제
    • 분류 전체보기 (101)
      • HTML, CSS (7)
      • JavaScript (19)
        • 모던 자바스크립트 딥다이브 (4)
      • ReactJS (17)
      • TIL (15)
      • WIL (17)
      • 알고리즘 (17)
      • 네트워크 (5)
      • Vue (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    무한렌더링
    익명 함수
    혼공스
    파이썬
    리액트 라우트
    리액트
    항해99주특기리액트
    항해99 주특기
    항해99
    항해99리액트
    항해99주특기
    항해99리액트숙련주차
    선언적 함수
    모던자바스크립트딥다이브
    자바스크립트
    피니아
    알고리즘
    리액트 라이프 사이클
    알고리즘 문제
    항해99 실전프로젝트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
youjeong_choi
[20221110] 자바스크립트 혼공스 반복문 연습문제 (항해99 프리온보딩 4일차)
상단으로

티스토리툴바