220. A/B
문제 두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오.
입력 두 자연수 A와 B가 주어진다. (1 ≤ A, B ≤ 10,000)
출력 첫째 줄에 A+B, 둘째 줄에 A-B, 셋째 줄에 A*B, 넷째 줄에 A/B, 다섯째 줄에 A%B를 출력한다.
예제 입력 1 7 3 예제 출력 1 10 4 21 2 1 —
1
2
3
4
5
6
7
import Foundation
var input = readLine()!.split(separator: " ")
var A = Double(input[0])!
var B = Double(input[1])!
print(A / B)
처음에 아무 생각없이 Float를 하였지만 문제가 틀렸다.
아마도 예제 입력 1에서의 조건이 틀렸기 때문으로 판단이 된다.
Float 보다는 Double이 더 범위가 크다.
그래서 Double로 변환하면서 해결
Float
- 정밀도: 32비트 부동소수점 수를 저장
- 메모리 사용량: 4바이트를 사용.
- 유효 숫자 자릿수: 약 6~7자리의 유효 자릿수를 가진다.
- 사용 사례: 메모리 사용량이 중요한 경우나, 높은 정밀도가 필요하지 않은 경우에 사용
Double
- 정밀도: 64비트 부동소수점 수를 저장
- 메모리 사용량: 8바이트를 사용.
- 유효 숫자 자릿수: 약 15자리의 유효 자릿수를 가진다.
- 사용 사례: 높은 정밀도가 요구되는 계산이나, 부동소수점 연산의 정확도가 중요한 경우에 사용
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.