백준 알고리즘 문제의 단계별 문제의 1번. 입출력과 사칙연산 파트입니다.
그중 일곱 번째 문제인 A / B를 출력하는 문제입니다.
입력으로는 한자리 자연수 두 개가 들어오게 됩니다.
<출처 - 백준 알고리즘 문제 - 단계별 문제풀이 7번 >
입력 두 개를 받아 나눗셈 결과를 출력해주면 됩니다.
변수의 사용과 스캔을 받을 수 있는지를 보는 문제입니다.
또 스캔을 받고 출력하는 과정에서 출력 결과의 상대오차가 10의 -9승 이하여야 합니다.
이는 소수점 9자리 이상 출력을 해야 상대오차가 저보다 작을 것입니다.
결론을 내 결과를 보여드리겠습니다.
우선 C언어입니다.
출력 시 "%. 9f"를 이용하시면 , 소수점 이후 아홉째 자리까지 출력할 수 있습니다.
#include<stdio.h>
int main() {
double a;
double b;
scanf("%lf %lf",&a,&b);
printf("%.9f", a/b);
}
a , b로 두 개의 입력을 받아 둘의 나눗셈 결과를 출력합니다.
C++입니다.
C++은 출력 전 cout.precision(10); 을 사용하여 정수를 포함한 10자리를 출력한다고 명시합니다.
#include <iostream>
using namespace std;
int main(){
int a, b;
cin>>a>>b;
cout.precision(10);
cout<<a*b;
}
python입니다
파이썬의 경우 일반적인 입력이 <1 2> 이런 형식으로 띄어쓰기를 통해 구분된 두 개의 문자를 입력받을 경우 한 문자열로 취급하여 "1 2"라는 문자열로 인식합니다.
따라서 input(). split()으로 공백을 기준으로 두 개의 입력을 찢어주고 , 해당 문자를 숫자로 인식시켜 나눠야 합니다.
그래도 int 타입으로 넣었어도 나눗셈 시 알아서 소수점으로 바꾸어 계산해주니 저이 후 작업은 필요 없습니다.
a,b=input().split()
a = int(a)
b = int(b)
print(a/b)
Java입니다.
자바의 경우 스캐너를 임포트 하여 사용하여주시면 됩니다.
마찬가지로 출력 타입을 조절하여 출력해주면 되겠습니다.
나누는 수에 더블 타입으로만 조절해줘도 괜찮습니다.
import java.util.Scanner;
public class Test122 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int a, b;
a = scan.nextInt();
b = scan.nextInt();
System.out.print(a/(double)b);
}
}
이것으로 일곱 번째 기본 문제인 a b 입력에 대한 a / b를 출력해보았습니다.
모든 문제를 풀 때까지 같이 달려봅시다.
'코딩 - > 백준 알고리즘 해설' 카테고리의 다른 글
백준 알고리즘 단계별 문제풀이 1 . 입출력과 사칙연산 , 나머지 (0) | 2021.06.22 |
---|---|
백준 알고리즘 단계별 문제풀이 1 . 입출력과 사칙연산 , 사칙연산 (0) | 2021.06.22 |
백준 알고리즘 단계별 문제풀이 1 . 입출력과 사칙연산 , A x B (0) | 2021.06.21 |
백준 알고리즘 단계별 문제풀이 1 . 입출력과 사칙연산 , A -B (0) | 2021.06.21 |
백준 알고리즘 단계별 문제풀이 1 . 입출력과 사칙연산 , A +B (0) | 2021.06.21 |