반응형
[1] 코드업 파이썬 기초 100제
100제 85번째 문제
[2] 문제
이미지의 가로 해상도 w, 세로 해상도 h, 한 픽셀을 저장하기 위한 비트 b 가 주어질 때,
압축하지 않고 저장하기 위해 필요한 저장 용량을 계산하는 프로그램을 작성해 보자.
예를 들어
일반적인 1024 * 768 사이즈(해상도)의 각점에 대해
24비트(rgb 각각 8비트씩 3개)로 저장하려면
1024 * 768 * 24 bit의 저장공간이 필요한데,
1024*768*24/8/1024/1024 로 계산하면 약 2.25 MB 정도가 필요하다.
1. 입력
w, h, b 가 공백을 두고 입력된다.
단, w, h는 모두 정수이고 1~1024 이다. b는 40이하의 4의 배수이다.
2. 출력
필요한 저장 공간을 MB 단위로 바꾸어 출력한다.
단, 소수점 셋째 자리에서 반올림하여 둘째 자리까지 출력한다.
3. 입력 예시
1024 768 24
4. 출력 예시
2.25 MB
https://codeup.kr/problem.php?id=6085
[3] 정답
1. 해설 미포함
w, h, b = input().split()
w = int(w)
h = int(h)
b = int(b)
e = (w*h*b)/(8*1024*1024)
print(format(e, ".2f"), end='')
print(' MB')
2. 해설 포함
w, h, b = input().split()
# 값을 3개 입력받아 변수 w, h, b에 각각 저장한다.
w = int(w)
# 변수 w에 저장된 값을 정수형으로 변환하고 변수 w에 다시 저장한다.
h = int(h)
b = int(b)
e = (w*h*b)/(8*1024*1024)
# (w*h*b)/(8*1024*1024)를 연산한 값을 변수 e에 저장한다.
print(format(e, ".2f"), end='')
# 변수 e에 저장된 값에서 소수점 3째 자리에서 반올림 한 후 출력한다.
print(' MB')
# 문자열 ' MB'를 출력한다.
input 함수는 값을 입력받는 함수이다.
int 함수는 변수에 저장된 값을 int(정수형)으로 변환한 후 출력하는 함수이다.
format 함수를 이용하면 원하는 소수점 자리까지 출력할 수 있다.
print 함수는 값을 출력하는 함수이다.
반응형
'프로그래밍 > 코드업 파이썬 기초 100제' 카테고리의 다른 글
코드업 파이썬 기초 100제 6087번(100제 87번째 문제) (0) | 2023.02.07 |
---|---|
코드업 파이썬 기초 100제 6086번(100제 86번째 문제) (0) | 2023.02.06 |
코드업 파이썬 기초 100제 6084번(100제 84번째 문제) (0) | 2023.02.06 |
코드업 파이썬 기초 100제 6083번(100제 83번째 문제) (0) | 2023.02.06 |
코드업 파이썬 기초 100제 6082번(100제 82번째 문제) (0) | 2023.02.06 |