λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
μΉ΄ν…Œκ³ λ¦¬ μ—†μŒ

λ¬΄ν•œμ˜κ³„λ‹¨: 컴퓨터λ₯Ό ν†΅ν•œ μΈκ°„μ˜ 진화와 λ°œμ „μ˜ κΈΈ

by pino2 2023. 12. 15.

λ¬΄ν•œμ˜ 계단 κ²Œμž„μ„ μ»΄ν“¨ν„°λ‘œ κ΅¬ν˜„ν•˜κΈ°

λ¬΄ν•œμ˜ 계단

이 ν¬μŠ€νŒ…μ—μ„œλŠ” λ¬΄ν•œμ˜ 계단 κ²Œμž„μ„ μ»΄ν“¨ν„°λ‘œ κ΅¬ν˜„ν•˜λŠ” 방법에 λŒ€ν•΄ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€. λ¬΄ν•œμ˜ 계단은 κ°€μƒμ˜ 계단을 μ˜¬λΌκ°€λŠ” κ²Œμž„μœΌλ‘œ, 계단을 μ˜¬λΌκ°€λŠ” λ™μ•ˆ 점프λ₯Ό ν•΄μ•Ό ν•˜λŠ”λ°, κ³„λ‹¨μ˜ 높이가 발포된 μ ν”„μ˜ 높이보닀 λ†’λ‹€λ©΄ κ²Œμž„μ—μ„œ νƒˆλ½ν•©λ‹ˆλ‹€. 이제 μ»΄ν“¨ν„°λ‘œ 이 κ²Œμž„μ„ κ΅¬ν˜„ν•΄ λ³΄κ² μŠ΅λ‹ˆλ‹€.

κ΅¬ν˜„μ„ μœ„ν•œ μš”κ΅¬μ‚¬ν•­

λ¬΄ν•œμ˜ 계단 κ²Œμž„μ„ μ»΄ν“¨ν„°λ‘œ κ΅¬ν˜„ν•˜κΈ° μœ„ν•΄ λ‹€μŒκ³Ό 같은 μš”κ΅¬μ‚¬ν•­μ΄ μžˆμŠ΅λ‹ˆλ‹€:

  1. κ²Œμž„μ— μ‚¬μš©λ  κ³„λ‹¨μ˜ κ°œμˆ˜λŠ” μ œν•œμ΄ μ—†μ–΄μ•Ό ν•©λ‹ˆλ‹€.
  2. ν”Œλ ˆμ΄μ–΄λŠ” κ²Œμž„μ„ μ‹œμž‘ν•  λ•Œ μ ν”„μ˜ 높이λ₯Ό μž…λ ₯ν•΄μ•Ό ν•©λ‹ˆλ‹€.
  3. ν”Œλ ˆμ΄μ–΄λŠ” ν‚€λ³΄λ“œμ˜ νŠΉμ • ν‚€λ₯Ό 눌러 점프λ₯Ό μ‹œλ„ν•  κ²ƒμž…λ‹ˆλ‹€.
  4. ν”Œλ ˆμ΄μ–΄κ°€ κ²Œμž„μ—μ„œ νƒˆλ½ν•  경우, κ²Œμž„ μ˜€λ²„ λ©”μ‹œμ§€λ₯Ό 좜λ ₯ν•œ ν›„ κ²Œμž„μ„ μž¬μ‹œμž‘ν•˜κ±°λ‚˜ μ’…λ£Œν•  수 μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€.

κ²Œμž„ 둜직 섀계

  1. κ²Œμž„μ€ while-loopλ₯Ό μ‚¬μš©ν•˜μ—¬ 계속 μ§„ν–‰λ©λ‹ˆλ‹€.
  2. μ‚¬μš©μžλ‘œλΆ€ν„° μ ν”„μ˜ 높이λ₯Ό μž…λ ₯ λ°›μŠ΅λ‹ˆλ‹€.
  3. κ³„λ‹¨μ˜ 높이λ₯Ό 랜덀으둜 μƒμ„±ν•©λ‹ˆλ‹€.
  4. κ³„λ‹¨μ˜ 높이가 μ ν”„μ˜ 높이보닀 클 경우, κ²Œμž„μ—μ„œ νƒˆλ½ν•©λ‹ˆλ‹€.
  5. κ²Œμž„ μ˜€λ²„ λ©”μ‹œμ§€λ₯Ό 좜λ ₯ν•œ ν›„, μ‚¬μš©μžμ—κ²Œ κ²Œμž„μ„ μž¬μ‹œμž‘ν•  것인지 λ¬Όμ–΄λ΄…λ‹ˆλ‹€.
  6. μ‚¬μš©μžμ˜ 선택에 따라 κ²Œμž„μ„ μž¬μ‹œμž‘ν•˜κ±°λ‚˜ μ’…λ£Œν•©λ‹ˆλ‹€.

κ΅¬ν˜„λœ μ†ŒμŠ€ μ½”λ“œ

μ•„λž˜λŠ” 이 κ²Œμž„μ˜ κ΅¬ν˜„λœ μ†ŒμŠ€ μ½”λ“œ μ˜ˆμ‹œμž…λ‹ˆλ‹€:

import random

def infinite_stair_game():
    jump_height = int(input("μ ν”„μ˜ 높이λ₯Ό μž…λ ₯ν•˜μ„Έμš”: "))

    while True:
        stair_height = random.randint(1, 10) # κ³„λ‹¨μ˜ 높이 생성
        print("κ³„λ‹¨μ˜ 높이:", stair_height)

        if stair_height > jump_height:
            print("νƒˆλ½ν•˜μ…¨μŠ΅λ‹ˆλ‹€.")
            choice = input("κ²Œμž„μ„ λ‹€μ‹œ μ‹œμž‘ν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ? (y/n): ")
            if choice != "y":
                break

infinite_stair_game()

이제 μœ„μ˜ μ½”λ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ λ¬΄ν•œμ˜ 계단 κ²Œμž„μ„ μ»΄ν“¨ν„°λ‘œ κ΅¬ν˜„ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ μ ˆν•œ 개발 ν™˜κ²½μ—μ„œ μœ„μ˜ μ½”λ“œλ₯Ό μ‹€ν–‰ν•΄ λ³΄μ„Έμš”!

λ¬΄ν•œμ˜ 계단 κ²Œμž„μ€ λžœλ€ν•˜κ²Œ μƒμ„±λ˜λŠ” κ³„λ‹¨μ˜ 높이에 따라 ν”Œλ ˆμ΄μ–΄κ°€ νƒˆλ½ν•˜λŠ” κ²Œμž„μœΌλ‘œ, μ‰½κ²Œ μ ‘κ·Όν•  수 μžˆλŠ” 컴퓨터 μ–Έμ–΄λ‘œ κ΅¬ν˜„ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이 κ²Œμž„μ€ λ¬΄ν•œμ˜ 계단을 μ˜¬λΌκ°€λŠ” 도전을 톡해 κ²Œμž„μ„ 즐길 수 μžˆλ„λ‘ ν•΄μ€λ‹ˆλ‹€.

λŒ“κΈ€