728x90
문제
(세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다.
(1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.
https://www.acmicpc.net/problem/2588
입력
첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다.
출력
첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.
예제 입력 1
472
385
예제 출력 1
2360
3776
1416
181720
문제 풀이 1
a = int(input())
b = input()
print(a*int(b[2]))
print(a*int(b[1]))
print(a*int(b[0]))
print(a*int(b))
input() 함수는 사용자가 입력한 것을 '문자열'로 지정합니다.
해서 문자열 b의 *인덱스를 활용하여 문제를 풀었습니다.
인덱스는 0부터 시작하며, 음수는 역순입니다.
*인덱스 : 색인, 위치값을 의미하며 sequence types에서 활용 가능합니다.
sequence types : string, list, tuple, range
문제 풀이 2
a = int(input())
b = int(input())
print(a*(b%10))
print(a*(b%100//10))
print(a*(b//100))
print(a*b)
문제 풀이 1과는 다르게 b를 int형으로 입력받아 산술 연산자를 활용했습니다.
1. %
나머지를 반환합니다.
2. //
몫을 반환합니다.
저처럼 파이썬을 독학하시는 분들에게 도움이 되길 바라며,
혹 더 좋은 방법이 있거나 오류가 있다면 편하게 말씀 부탁드립니다.
728x90