반응형

Python 174

[ Python ] 최대공약수 구하기 프로그램

사용자로부터 두 수를 입력 받아 유클리드 알고리즘을 이용해 최대공약수를 구하는 프로그램 작성해보자. n = int(input("정수1 입력: ")) m = int(input("정수2 입력: ")) if n 0: r = n % m n,m = m,r if n != 1: print("두 수의 최대공약수: ", n) else: print("두 수는 서로소이다.") ▶️ 유클리드 호제법 a와 b를 자연수라고 하고 a를 b로 나눈 나머지를 r이라고 하면 → (a,b) = (b,r) 722 % 190 = 3 나머지 152 190 % 152 = 1 나머지 38 152 % 38 = 4 나머지 0 따라서 722와 190의 최대공약수는 나머지가 0이 되는 38이다. ▶️ n과 m..

Language/Python 2021.08.29

[ Python ] 모든 약수 구하기 프로그램

사용자로부터 자연수를 입력받아 약수를 모두 출력하는 프로그램을 작성해보자. n = int(input("자연수 입력: ")) for m in range(1, n+1): if n % m == 0: print(m, end = " ") ▶ for m in range(1, n+1) : 1부터 사용자가 입력한 자연수 n까지 반복문을 돌림 ▶ if n % m == 0 : 사용자가 입력한 자연수 n가 반복문에 입력된 m이 0으로 나누어 떨어지면 m값을 출력함

Language/Python 2021.08.29

[ Python ] 몬드리안 터틀 프로그램

터틀 그래픽을 이용해 몬드리안의 그림처럼 선과 면을 사용해 추상화를 그리는 프로그램 작성해보자. import turtle, random t=turtle.Turtle() t.shape("turtle") t.pensize(3) for i in range(20): r = random.random() g = random.random() b = random.random() x = random.randint(-300, 300) y = random.randint(-300, 300) length = random.randint(10, 300) t.penup() t.goto(x, y) t.pendown() t.color(r, g, b) t.begin_fill() for j in range(4): t.forward(leng..

Language/Python 2021.08.29

[ Python ] 범인 찾기 게임 프로그램

경찰에 쫓기던 범인이 3개의 방 중의 한 곳에 숨어버렸다고 할 때 범인을 찾는 게임 프로그램을 작성해보자. 단, 범인은 방문을 열 때마다 무작위로 3개의 방 중 하나의 방으로 이동하며, 3개의 방 중 하나의 방을 선택했을 때, 범인이 없으면 점수가 10점씩 감점되면서 범인은 다른 방으로 이동함 범인을 잡으면 기존의 점수에 100점을 추가한 점수를 출력하고 프로그램은 종료됨 import random score = 0 while True: room = random.randint(1, 3) n = int(input("방 번호를 입력하세요: ")) if n == room: print("범인 체포!") score += 100 break elif n > 3: print(n, "번 방은 없습니다.") else: pr..

Language/Python 2021.08.29

[ Python ] 랜덤 워크 시뮬레이션 프로그램

시작지점에서 다음 방향이 임의로 선택해 진행 경로가 불규칙한 랜덤 워크 시뮬레이션 프로그램을 작성해보자. import turtle import random t=turtle.Turtle() t.shape("turtle") for i in range(30): length = random.randint(1, 100) t.forward(length) angle = random.randint(-180, 180) t.right(angle) ▶ 편의상 간단하게 표현하기 위해 랜덤 값을 작게 설정함 ▶ length = random.randint(1, 100) : 한 변의 길이는 1~100 사이의 값으로 지정 ▶ angle = random.randint(-180, 180) : 각도는 -180~180 사이의 값으로 지정

Language/Python 2021.08.29

[ Python ] n각형 그리기 프로그램

사용자에게 값을 입력받아 그 값에 맞는 n각형을 그리는 프로그램을 작성해보자. import turtle t=turtle.Turtle() t.shape("turtle") polyn=int(turtle.textinput("","몇각형을 원하시나요?")) for i in range(polyn): t.fd(100) t.lt(360/polyn) 한 변의 길이는 50~250 사이의 랜덤 값을 적용하고, 다각형 3,4,5,6각형 중 하나를 사용자가 입력하는대로 그리는 프로그램을 작성해보자. 단, 3,4,5,6을 제외한 다른 값을 입력한 경우 다시 입력받도록 함 import turtle, random t=turtle.Turtle() t.shape("turtle") n=random.randint(50,250) while..

Language/Python 2021.08.29

[ Python ] 짝수 출력 프로그램

1~100까지의 수들 중 짝수만 출력하는 프로그램을 작성해보자. 단, continue를 반드시 사용 for i in range(1,101): if i%2 != 0: continue print(i, end=" ") ▶ i가 2랑 나누었을 때 0이 아닌 경우, 즉 2로 나누어 떨어지지 않는 경우에는 건너띔 → continue 2부터 100사이의 모든 짝수를 출력하는 프로그램을 반복문을 이용해 작성해보자. for i in range(2, 101): if i%2 == 0: print(i, end = ' ') ▶ for i in range(2, 101) : 2부터 100까지 반복문을 돌리기 위해 범위를 101까지로 설정함 ▶ if i%2 == 0 : 2로 나누어 떨어지는 값이 짝수

Language/Python 2021.08.27

[ Python ] 컴퓨터와의 주사위 대결 프로그램

내가 던진 주사위 눈값과 컴퓨터 주사위 눈값이 화면에 출력되도록 한다. 아무 키나 입력하면 계속 진행되고 0을 입력하면 게임은 종료된다. 왼쪽 주사위가 내가 던진 주사위고 오른쪽이 컴퓨터 주사위라고 간주할 때, 내가 던진 주사위 눈값이 더 크면 '승리', 그렇지 않으면 '패배'를 화면 상단에 출력하는 프로그램을 작성해보자. 단, 비긴 경우에는 '무승부'라고 출력한다. import random, turtle t=turtle.Turtle() scr=turtle.Screen() dice1="img/dice1.gif" dice2="img/dice2.gif" dice3="img/dice3.gif" dice4="img/dice4.gif" dice5="img/dice5.gif" dice6="img/dice6.gif"..

Language/Python 2021.08.27
반응형