문제 풀이/BOJ 문제 풀이

[BOJ알고리즘, C++]#1008_A/B, C++ 부동 소수점, precision(), fixed

Hardii2 2022. 9. 4. 15:16

 

[BOJ 알고리즘, C++] #1008_C++ A/B, 부동 소수점, precision(), fixed

 

BOJ 알고리즘 문제 풀이, 1008_A/B

나누기 값을 주어진 부동소수점 자리까지 출력하기

 

 


 

문제

 

풀이

 

1. stdio 사용

#include <stdio.h>

int main()
{
    double a;
    double b;
    
    scanf("%lf, %lf", &a, &b);
    
    printf("%.13lf", a / b);
    
    return 0;
}

 

2. iostream 활용

// 1. std::cout.precision(n) : 실수 전체 자리수를 n까지 표현

double a = 3333.333333;

std::cout.precision(6);

cout << a << endl;

결과 : 3333.33

// 2. std::cout << std::fixed : precision 에서 정한 자리수를 전체에서 "소수점" 밑으로 변경

std::cout << std::fixed;

cout << a << endl;

결과 : 3333.333333

// 3. std::cout.unsetf(std::fixed) : 고정 소수점 표기 해제

std::cout.unsetf(std::fixed);

cout << a << endl;

결과 : 3333.33

 

결과 코드
#include <iostream>
using namespace std;

/*
    std::precision(N)   	: 실수 전체의 자리수를 n개로 제한합니다. 이상의 자릿수는 반올림됩니다.
    std::cout << std::fixed;    : precision(n)을 통해 설정한 자릿수 n개를 소수점 아래의 자릿수로 변경됩니다.
*/

int main()
{
    double A, B;

    cin >> A >> B;

    cout.precision(12);
    cout << fixed;

    cout << A / B;
}