728x90

https://www.acmicpc.net/problem/11021

 

11021번: A+B - 7

각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다.

www.acmicpc.net

문제)

두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.

입력)

첫째 줄에 테스트 케이스의 개수 T가 주어진다.

각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)

출력)

각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다.

 

풀이)

풀이1)

T=int(input()) #테스트 케이스의 개수를 T로 입력을 받겠다.
for i in range(1, T+1): #반복문의 range의 범위는 항상 0부터지만, case#1부터 시작하므로 범위를 1부터 T+1의 값으로 변경
    a, b=map(int, input().split()) #a와 b의 정수값을 한줄로 입력을 받겠다.
    print("Case #%d: %d" %(i, a+b)) #공백이 발생하지 않도록 데이터(%)형식을 이용해 출력해준다
    #print("%출력하고자 하는 데이터의 형" %(데이터))

풀이1번은 문자열 포멧코드, 데이터의 형식을 이용해 출력을 하는 방법이다.

그렇다면, print("Case #", i, ":", a+b)는 왜 안되는걸까?

바로 출력값 사이에 공백이 들어가 출력이 되기 때문이다.Case # 1 : 2->이런식으로 공백이 사이사이 출력되기 때문에 따로따로 출력하는 것은 불가능하다.

 

풀이2)

T=int(input()) #테스트 케이스 개수를 T로 입력을 받겠다
for i in range(1, T+1): #반복문의 range의 범위는 항상 0부터지만, case#1부터 시작하므로 범위를 1부터 T+1의 값으로 변경
    a, b=map(int, input().split()) #a와 b의 정수값을 한줄로 입력을 받겠다.
    print(f"Case #{i}: {a+b}") #f-string함수를 사용해 출력

f-string 함수: 여러 타입의 값을 출력하고 싶을 때 f-string을 사용해 출력

f"{변수 or 연산값등}"

따옴표안의 문자는 문자열로, {}안의 값은 변수또는 연산값 등등이 옵니다.

 

풀이3)

T=int(input()) #테스트 케이스 개수를 T로 입력을 받겠다
for i in range(1, T+1): #반복문의 range의 범위는 항상 0부터지만, case#1부터 시작하므로 범위를 1부터 T+1의 값으로 변경
    a, b=map(int, input().split()) #a와 b의 정수값을 한줄로 입력을 받겠다.
    print("Case #{}: {}".format(i, a+b)) #format 함수를 이용해 출력

이 방법은 format함수를 이용하여 출력하는 방법입니다. {}의 개수와 format()안에 매개변수의 값은 반드시 일치해야합니다.

 

더 자세한 설명을 보고 싶다면,

https://lavenderje.tistory.com/32

 

[백준] 2739: 구구단-python[파이썬]

https://www.acmicpc.net/problem/2739 2739번: 구구단 N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램을 작성하시오. 출력 형식에 맞춰서 출력하면 된다. www.acmicpc.net 문제) N을 입력받은 뒤, 구구단 N단..

lavenderje.tistory.com

이 풀이를 봐주세요!

728x90