본문 바로가기

알고리즘

[백준] 1008번: A/B (java, python)

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

 

1008번: A/B

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

www.acmicpc.net


💡 주의 사항

상대 오차 또는 절대 오차 범위 이하여야 한다. - float과 double 중 어떤 것을 선택해야 할까?


🗒 풀이

java

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt(); // sc.nextDouble();
        int b = sc.nextInt();
        System.out.println((double) a / b); 
    }
}
  • 오차 범위를 벗어나지 않게 반드시 double형으로 출력을 해줘야 함
  • double형 - 11bit, 소수 부분 15자리까지 오차 없이 표현
  • float형 - 8bit, 소수 부분 6자리까지 오차 없이 표현

python

a, b = map(int, input().split())
print(a / b)
  • 나누기 연산 시 슬래시(/) 연산자를 사용 -  자바와 동일
  • 슬래시 두 개(//) - 몫을 구하는 연산자(정수), 퍼센트 기호(%) - 나머지 구하는 연산자(정수)
  • map 함수를 이용해서 input 함수로 데이터를 입력받는 즉시 int로 변환
  • map 함수의 사용 방법은 다음에서 자세하게 설명되어있다.

https://dojang.io/mod/page/view.php?id=2286 

 

파이썬 코딩 도장: 22.6 리스트에 map 사용하기

이번에는 리스트에 map을 사용해보겠습니다. map은 리스트의 요소를 지정된 함수로 처리해주는 함수입니다(map은 원본 리스트를 변경하지 않고 새 리스트를 생성합니다). list(map(함수, 리스트)) tupl

dojang.io