- 숫자맞추기 게임
- 총평
- 클래스와 함수 사용하기
- 총평
개인과제
1. 숫자맞추기 게임
과제 내용
- 플레이어와 컴퓨터가 참여하는 숫자 맞추기 게임을 만드세요.
- 프로그램은 다음과 같은 기능을 포함해야 합니다.
- 컴퓨터는 1부터 10 사이의 랜덤한 숫자를 생성합니다.
- 플레이어는 숫자를 입력하고, 입력한 숫자가 큰지 작은지 힌트를 얻습니다.
- 플레이어가 숫자를 맞힐 때까지 위 과정을 반복합니다.
import random #랜덤 패키지 가져오기
computer_num = random.randint(1,10) #1에서10사이의 숫자를 랜덤으로 가져오게 지정
print('''1과 10 사이의 숫자를 하나 정했습니다.
이 숫자는 무엇일까요?''') #위 메서드가 작용 했을 때 출력 되는 문장 작성
while True: #조건이 참일 때까지 반복 설정
user_num = int(input('숫자를 입력하세요.')) #사용자가 직접 숫자를 입력하고 정수로 바꿔주게 설정
if computer_num == user_num: #랜덤 숫자와 사용자 숫자가 동일할 때 작동 설정
print(f'정답입니다.') #동일 시 출력 되는 메시지 설정
break #위 조건이 작동 시 반복을 멈추게 설정
if user_num < computer_num: #사용자 입력 숫자가 컴퓨터 보다 적을때 작동 설정
print("너무 작습니다. 다시입력하세요.") #위 조건이 작동 시 출력 되는 메시지 작성
else: #위 조건이 거짓일 때 작동 설정
print("너무 큽니다. 다시입력하세요.") #else 조건이 작동 시 출력 되는 메시지 작성
과 10 사이의 숫자를 하나 정했습니다.
이 숫자는 무엇일까요?
숫자를 입력하세요.4
너무 작습니다. 다시입력하세요.
숫자를 입력하세요.5
정답입니다.
총평
처음 문제를 보게 되었을땐 반복문과 조건문을 사용해야 할 것이라 생가했지만
어떤식으로 작성 해야할지 감이 안잡혀서
강의자료와 인터넷 검색으로 감을 잡고서 작성 시작
1) while에 어떤 조건이 코드를 작동 시킬지 감이 잡히지 않아 검색하여
while True: 으로 작성 후 스스로 코드 작성
2) if문에 어떤 조건을 걸지 무엇을 먼저 작동 시켜야할지 시행착오를 거침
2. 클래스 함수 사용
과제 내용
- 이름, 성별, 나이를 입력받고, 이를 출력하는 프로그램을 작성해주세요.
1차 시도
class person: #person #클래스 정의
def __init__(self, name, gender, age):#초기화 메서드
self.name = name #속성정의
self.gender = gender
self.age = age
def display(self):
print(f"""('이름':{self.name}),('성별': {self.gender}
('나이': {self.age}""" )
person1 = person('장한검', 'male', 29)
print(person1)
<__main__.person object at 0x000001EB6D2775C0>
작동은 하지만 값이 이상하게 나옴
2차시도
class person: #person #클래스 정의
def __init__(self, name, gender, age): #초기화 메서드
self.name = name #속성정의
self.gender = gender
self.age = age
def __str__(self): #객체 문자열 반환 메서드 설정
return """('이름':(self.name)),('성별': (self.gender)
('나이': (self.age)"""
name = input("이름을 입력하세요") #사용자 입력 설정
gender = input("성별을 입력하세요")
age = input("나이를 입력하세요")
이름을 입력하세요준영
성별을 입력하세요male
나이를 입력하세요29
input()함수만 작동하고 아무일 없음
3차 시도
class person: #person #클래스 정의
def __init__(self, name, gender, age): #초기화 메서드
self.name = name #속성정의
self.gender = gender
self.age = age
def __str__(self): #객체 문자열 반환 메서드 설정
return """('이름':(self.name)),('성별': (self.gender)
('나이': (self.age)"""
person1 = person('장한검', 'male', 29) #객체별 정보 넣기
print(person1)
('이름':(self.name)),('성별': (self.gender)
('나이': (self.age)
작동을 하지만 return값만 나오고 아무일 없음
총평
클래스 정의, 생성자 지정은 된 것같으나
1) 멤버변수가 제대로 지정 된 건지 모르겟음
2) 정보를 출력하는 함수가 어떻게 작동하는지 모르겟음
3) 입력 코드를 어떻게 어디에 사용해야할지 모르겟음
'과제' 카테고리의 다른 글
반복문 연습하기 Part 1, 2, 3 (0) | 2024.10.14 |
---|---|
내일배움캠프 8조 Python 반복문 (0) | 2024.10.11 |
9/30 Python 톺아보기 (0) | 2024.09.30 |
9/27 걷기단계 2, 3 (0) | 2024.09.27 |
09/26 걷기단계 1 (2) | 2024.09.26 |