본문 바로가기
정보

Chat GPT를 이용해서 Mermaid에서 플로우차트 만들기

by Maccrey 2024. 6. 11.
반응형

이 블로그에서는 Python 함수의 로직을 Mermaid를 사용하여 플로우차트로 시각화하는 과정을 설명합니다.

이를 통해 코드의 흐름을 더 쉽게 이해할 수 있습니다.

 

1. Python 함수 코드 가지고 오기

먼저, 주어진 Python 함수 med3를 살펴봅시다. 이 함수는 세 정수의 중앙값을 찾는 코드를 예시로 작성하겠습니다.

#세 정수를 입력받아 중앙값 구하기

def med3(a,b,c):
    # a,b,c의 중앙값을 구하여 반환
    if a >= b:
        if b >= c:
            return b
        elif a <= c:
            return a
        else:
            return c
    else:
        if a >= c:
            return a
        elif b <= c:
            return b
        else:
            return c

print("세 정수의 중앙값을 구하라.")
a = int(input("정수 a의 값을 입력하세요 : "))
b = int(input("정수 b의 값을 입력하세요 : "))
c = int(input("정수 c의 값을 입력하세요 : "))

 

 

2. Chat GPT를 이용하여 코드를 플로우차트로 변환하기

이제 위 코드를 Chat GTP에 플로우차트로 변환명령을 해보겠습니다.

Chat GTP는 조건문과 반환문을 중심으로 플로우차트를 설계합니다.

#세 정수를 입력받아 중앙값 구하기

def med3(a,b,c):
 # a,b,c의 중앙값을 구하여 반환
 if a >=b:
  if b >= c:
   return b
  elif a <= c:
   return a
  else:
   return c
 else:
  if a >= c:
   return a
  elif b <= c:
   return b
  else:
   return c

print("세 정수의 중앙값을 구하라.")
a = int(input("정수 a의 값을 입력하세요 : "))
b = int(input("정수 b의 값을 입력하세요 : "))
c = int(input("정수 c의 값을 입력하세요 : "))

위 코드를 https://mermaid.live/에서 사용가능한 플로우차트 코드로 작성해줘

 

3. Chat GPT가 Mermaid 코드 작성해서 다음과 같은 결과값을 내놓습니다.

graph TD
    A[세 정수의 중앙값을 구하라.] --> B[a의 값을 입력하세요]
    B --> C[b의 값을 입력하세요]
    C --> D[c의 값을 입력하세요]
    D --> E{a >= b}
    E --> |Yes| F{b >= c}
    E --> |No| I{a >= c}
    F --> |Yes| G[return b]
    F --> |No| H{a <= c}
    H --> |Yes| J[return a]
    H --> |No| K[return c]
    I --> |Yes| J[return a]
    I --> |No| L{b <= c}
    L --> |Yes| M[return b]
    L --> |No| K[return c]

 

 

4. Mermaid를 사용하여 플로우차트 시각화하기

 

Mermaid Live Editor(https://mermaid.live/)에 접속하여 위 코드를 붙여넣기 하면, 플로우차트가 시각화됩니다. 이를 통해 코드의 흐름을 한눈에 확인할 수 있습니다.

 

 

5. 플로우차트 저장하기

 

이제 위 단계들을 따라가며 Python 코드를 Mermaid로 시각화할 수 있습니다. 이를 통해 코드의 복잡한 로직을 쉽게 이해하고 설명할 수 있습니다.

 

수발가족을 위한 일기장 “나비일기장”

 

https://play.google.com/store/apps/details?id=com.maccrey.navi_diary_release 

 

 

비공개테스트를 위한 20명의 테스터모집 앱 "테스터 쉐어"

 

https://play.google.com/store/apps/details?id=com.maccrey.tester_share_release  

반응형