🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

if문 안에 while문 구조

21.02.14 11:25 작성 조회수 3.12k

0

if 조건:

 실행할 내용

 while 조건:

  실행할내용

병합정렬 코드처럼 이러한 if문안에 while문 코드인경우에 코드 실행순서가 if문을 먼저 다 돌고 while문을 실행하나요??  아니면 if문 하나 실행하고 while문 하나 실행 이런식으로 작동되나요?? 헷갈려서 질문드립니다 ㅠㅠ

답변 3

·

답변을 작성해보세요.

0

안녕하세요^^

if문은 반복문이 아니라 제어문입니다. 참이면 한 번만 하고 끝나는 구문입니다.

if lt<rt: 가 참이면 if문에 속한 블록을 한 번 하고 끝나는 것입니다.

if lt<rt: 안의 while문은 반복문이니까 거짓이 될 동안 자기 구문을 하다고 멈추면 됩니다.

0

김용민님의 프로필

김용민

질문자

2021.02.14

def Dsort(lt, rt):
    if lt < rt:
        mid = (lt+rt)//2
        Dsort(lt, mid)
        Dsort(mid+1, rt)
        p1 = lt
        p2 = mid + 1
        tmp = []
        while  p1<=mid and p2<=rt:
            if arr[p1]<arr[p2]:
                tmp.append(arr[p1])
                p1+=1
            else:
                tmp.append(arr[p2])
                p2+=1

                

       저 코드에서     if문 안에 while문이 쓰여졌을떄 어떤 순서대로 작동하는지 궁금합니다.     

     1. if문(참일시) -> 실행 -> while문(참일시) -> 실행 -> if문 -> while 문 

이순서대로 반복인가요? 아니면

  2. if문(참일시) 실행 -> 또 if문 실행 -> if문 실행 -> 다 실행하고 while문 실행 

이런 순서대로 코드가 실행되나요!?

헷갈려서 질문드립니다!!!

*for i in range(n):

   for j in range(n):

*의 2중 for문처럼 n이 5라 가정시 i가 0일때 j가 0 1 2 3 4 돈 후  i 가 1이되고 j가 0 1 2 3 4 돌고 이런식으로 진행 되는 2중 for문 구조랑 if문 안의 while문의 구조도 똑같은 방식으로 코드가 진행된다고 보면되나요???

0

안녕하세요^^

무슨질문인지 제가 잘 이해가 안됩니다. "if문을 먼저 돌리고"나 "if문 하나 실행하고" 말이 뭔지 모르겠습니다. 예시 코드를 작성해서 구체적으로 질문했으면 합니다.

채널톡 아이콘