본문 바로가기

코딩/과제11

과제 - 주민등록번호 유효검사 과제 주민등록번호 유효성 검사 프로그램을 만들어보자 0 0 1 0 1 1 - 3 0 6 8 5 1 8 각 자리에 2,3,4,5,6,7 ,8,9,2,3,4,5 를 곱하고 더함 (마지막 주민등록번호 숫자는 제외) 0+0+4+0+6+7+24+0+12+24+20+5 = 102 11로 나눈 나머지 값을 구함 102 % 11 = 3 11에서 위 값을 뺌 11 - 3 = 8 위 결과가 2자리인 경우 10으로 나눈 나머지 값을 구함 결과값이 마지막 주민등록번호와 일치하면 유효한 주민번호 단, 클래스로 설계하고 객체를 이용하여 프로그램을 동작 class RRN: def __init__(self): # 생성자 self.Num = list(input('주민등록 번호를 입력하시오.(1 2 3 4 5 6 - 1 2 3 4 5 .. 2024. 3. 19.
과제 - 가위 바위 보 만들기, 로또번호 추첨하기 과제1 가위, 바위, 보 게임 만들기 가위, 바위, 보 중 하나를 입력하세요: 가위 컴퓨터:바위,유저:가위->결과 컴퓨터 승! random함수 사용 가능 # 풀이1 import random user = input('가위, 바위, 보, 중 하나를 입력하세요: ') entry = ['가위','바위','보'] com = random.choice(entry) msg1 = '컴퓨터 승!' msg2 = '유저 승!' msg3 = '무승부!' if com == user: result = msg3 elif com == '가위' and user == '보': result = msg1 elif com == '바위' and user == '가위': result = msg1 elif com == '보' and user == .. 2024. 3. 19.
과제 0.1 + 1.1 == 1.2 가 False 인 이유 과제 0.1 + 1.1 == 1.2 가 False 인 이유 컴퓨터의 실수 표현 방식 0.1 + 1.1 == 1.2 가 False 인 이유에는 컴퓨터의 실수 표현 방식에 있다 컴퓨터가 실수를 표현하는 방식에는 두가지가 있다. 1. 고정 소수점 방식 고정소수점은 소수점을 사용하여 고정된 자리수의 소수를 나타내는 것이다. 한정된 메모리에서 부동소수점 방식보다 좁은 범위의 수만 나타낼 수 있다. 출처 - 위키백과 말 그대로 소수부의 자릿수를 임의적으로 미리 정하여, 고정된 자릿수의 소수를 표현하는 것이다. 큰범위를 표현하기 어렵다는 단점이있다 2. 부동 소수점 방식 (Floating) 부동소수점(浮動小數點, floating point)방식은 실수를 컴퓨터상에서 근사하여 표현할 때 소수점 위치를 고정하지 않고 그.. 2024. 3. 12.