파이썬 프로그래밍 문제 질문?
a, b, c =input().split()
a = int(a)
b = int(b)
c = int(c)
d = (a+b+c)
print(d)
print("%.1f" % ((d)/3))
여기서 print("%.1f" % ((d)/3)) 이부분 해석해 주세요 (d/3)은 평균 구하는거는 아는데 앞에 %.1f 가 뭔지 몰겠어요
파이썬에서 쓰이는 %.1f는 서식문자 중 하나로써 %.1f는 소숫점 한자리까지 출력하라는 뜻입니다.
%.2f는 소숫점 두자리까지 뒤의 숫자가 커지면 커질 수록 소숫점의 출력 갯수가 늘어납니다.
그 외에 % 바로 뒤에 숫자가 있는 경우가 있는데 그 경우는 그 숫자만큼 공간을 마련합니다.
예시로 보면 %10.1f를 출력하면 앞에 빈칸 10개 + 소숫점 1자리까지 출력을 하게 됩니다.
.쩜은 소수점 이하의 숫자들로 표현하라는 문법입니다.
f는 floating point의 약자로서 실수라는 의미이지요.1
이 두가지를 조합해서 코드를 해석해보면 실수형 변수를 소스점 첫째 자리까지 프린트해서 출력해서 보여주라는 명령이 됩니다.
만일 소수점 3째자리까지 실수를 출력하려면
%.3f 로 표현하면 소수점 3째자리까지 표시가 됩니다
나눗셈 연산을 하게 되면 우리가 생각하는것과 다르게 컴퓨터의 소수점이 길게 되어 있습니다.
예를 들어 10/3을 하게 되면 3.3333333333 이런식으로 나오게 됩니다.
그래서 포멧팅을 사용하여 3.3만 나오도록 하기 위해서 %.1f를 사용합니다.
%는 문자열 포멧팅을 하겠다는 의미로 보면 됩니다.
.은 소수점입니다.
1은 소수점 첫째자리까지 표시하겠다는 뜻입니다.
f는 데이터 타입이 float 타입이라는 것입니다.
%.1f의 의미는 소수점 첫째자리까지 표시하겠다는 뜻입니다. (3.3)
%.5f는 소수점 다섯째 자리까지 표시하겠다는 뜻입니다. (3.33333)
f는 실수형 (float)로 출력하라는 의미를 가졌고, %.1은 소수점 1자리까지 출력하라는 의미를 가졌습니다.
예로 값이 12.345 고 %.1f를 사용 하시면 12.3이 출력됩니다.
또 다른 예로 값이 1212 고 %.1f를 사용 하시면 1212.0이 출력됩니다.
도움되셨으면 좋게습니다.
%.1f는 d/3을 소숫점 첫번째 자리까지 출력하라는 명령입니다.
.1이 첫번째 자리까지라는 의미이고, f가 float 형태로 출력하라는 의미입니다.
만약에 .1 대신 .2가 들어갔으면 두번째 자리까지 출력됐을 거고, f 대신 d가 들어갔으면 int 형태로 출력되어 소숫점이 표시되지 않았을 겁니다.
안녕하세요~! 아하(Aha) 지식답변자 다라닝입니다.
질문하신 내용에 대하여 아래와 같이 답변 드립니다.%.1f는 소수점 한자리수까지만 실수로 표시해주는 것을 말합니다.
평균을 구한 최종값에 소수점 컨트롤하는 내용입니다.
부족하지만 도움이 되셨기를 바라며 추가적인 문의가 필요하시면 답변 부탁드려요!