inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

반복문과 range

range 질문

해결된 질문

43

dhkdxo12

작성한 질문수 41

1

반복문과 range 강의 챕터 4:51

for i in range(3):

j=0

while j<3:

print("*", end=" ")

j+=1

print()

 

위 구문에 대해서 range 의미를 잘 모르겠습니다.

range(3)이니까 0~2까지 해서 3개가 된다는 것은 이해가 됐고, 개행이 2번 되어 행이 3개가 된다는 것은 이해가 됐습니다.

하지만 왜 각 행마다 개수가 range의 어떤 역할 때문에 *이 3개씩 있는지 이해가 되지 않습니다.

python java c 정보처리기사

답변 2

1

주말코딩

별이 가로로 3개씩인 것은 range와 상관없습니다.

오히려 j의 반복문 때문입니다.

j는 0부터 시작합니다. 그런데 아래에 j가 3보다 작을 때까지는 계속 print를 하라고 합니다.

처음에 j가 0일 때 *을 출력했고, 그다음에 j+=1 구문에 의해서 j가 2일 때까지 가로로 출력합니다.

지금 end 파라미터의 값이 " " 한 칸 띄는 것으로 되어있으니까 개행이 안되고 띄어서 가로 옆으로 출력되죠.

 

그 다음에 while문을 벗어납니다. 그 뒤에 일반 print()를 통해 개행을 하게 됩니다. print()함수는 기본적으로 end='\n' 으로 되어있어 개행하는 효과가 발생합니다.

 

while은 벗어났는데 아직 i가 0일 때만 한 것입니다. 그 다음에 i가 1로 바뀝니다.

그리고 다시 j를 0부터 시작하죠.

 

이렇게 반복해서 그 출력값이 되는 것입니다.

 

1

dhkdxo12

그러면 range의 역할이 해당 구문에서는 어떤 역할을 하기 위해서 있는건가요?

1

주말코딩

3번 돌리기 위해서 있습니다. 횟수로 이용되기 위함입니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. dhkdxo12님.

반복문과 range에 대한 질문을 주셔서 감사드립니다. 코드를 이해하는데 있어서 range 함수와 반복문들의 역할을 파악하는 것이 중요합니다. 먼저, 코드를 조금씩 해석해 보겠습니다:

for i in range(3):
    j = 0
    while j < 3:
        print("*", end=" ")
        j += 1
    print()

이 코드의 주요 포인트는 두 가지 반복문(forwhile)이 혼합되어 있다는 것입니다.

  1. for i in range(3):

    • 이 부분은 외부 반복문으로, i는 0, 1, 2의 세 가지 값을 순차적으로 가지게 됩니다. 각각의 i 값마다 내부의 while 루프가 실행됩니다.
    • 따라서 외부 루프가 3번 반복됩니다.
  2. while j < 3:

    • 이 부분은 내부 반복문으로, j가 0부터 시작하여 3보다 작은 동안 반복됩니다.
    • 즉, j는 0, 1, 2 인 동안 실행되어 print("*", end=" ") 구문을 3번 실행합니다.

이 두 반복문이 결합되어 결과적으로 각 for 루프가 돌아갈 때마다 while 루프가 3번 실행되며, 그 사이에 별표 3개(* * *)가 출력됩니다. 그리고 print() 함수는 기본적으로 줄 바꿈을 포함하므로, 각 for 루프 사이에 줄이 바뀌면서 세 줄의 별표가 만들어집니다.

제공된 코드에서는 내부 while 루프가 *을 3번 출력하도록 설계된 것입니다. 따라서, 각 행에는 항상 3개의 *가 출력되는 것입니다.

관련된 범위의 역할과 반복문 처리에 대한 추가 정보가 필요하시다면, 다음의 유사한 질문을 참고하시면 도움이 될 것입니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

75강 26년 1회 코드 문제 해석 강의 질문 드립니다.

0

2

1

모의고사

0

11

1

17강 28:26

0

12

1

C언어 기출문제 변형에서 6번 문제입니다. 20:56

0

11

3

17강 22:38

0

20

2

16강 2:17

0

20

2

부모 및 자식 생성자 출력 관련

0

11

1

부모 및 자식 생성자 출력

0

15

2

9강 35분경 질문있습니다

0

25

2

11강 3:20

0

27

2

10강 11:42

0

27

2

9강 26:23

0

44

2

9강 23:46

0

31

2

코드 중간에 . 붙은건 뭐라고 봐야할까요?

0

45

2

설명중 단어 의미 해석 문제.

0

29

1

수강 섹션마다 옆에 자료 다운로드 버튼이 있는데. 다운받으면 무슨내용이 있는건가요?

0

21

1

SQL 집중학습

0

41

1

NULL과 0

0

46

2

26년 1회 기출문제 11번 질문드립니다

0

46

1

업캐스팅 문제예시5 & 업캐스팅 문제 예시 6

0

45

2

V1.2 VS V.091

0

49

2

split('T')일때는 T만 제거되는거고 공백은 제거되지 않는 건가요?

0

50

2

파이썬 언어 업데이트, 언어별 학습자료 업데이트

0

48

2

C, java, python 언어 기출문제 강의 질문

0

52

2