관리 메뉴

찹모찌의 기록일지

단계별로 풀어보기 1단계: 입출력과 사칙연산 본문

알고리즘

단계별로 풀어보기 1단계: 입출력과 사칙연산

찹모찌 2022. 7. 1. 00:11

백준 단계별로 풀어보기 1단계: 입출력과 사칙연산

만만하게 보고 시작했던 입출력과 사칙연산 문제였는데, 중간중간 막힌 부분이 잠깐씩 있었습니다.

입출력이 뭐 어렵겠어? 했는데 조건들이 까다로운 부분들이 있어서 소개해 드리고자 합니다.

 

  • 1008 A/B

A/B 문제

애를 먹었던 부분은 저 실제 정답과 출력 값의 절대오차 또는 상대오차가 10^-9이하이면 정답이다. 부분이었다.

그냥 단순히 double을 사용하여 출력을 하면 되는 것 아닌가 했지만 그렇게 해서는 오답처리가 되었다....

#include <iostream>
using namespace std;

int main(void)
{
    int a,b;
    cin>>a>>b;
    cout<<(double)a/b<<endl;
    return 0;
}

아무리 생각해봐도 더 나아지는 지점이 없는데 어딜 고칠까... 생각하던 차에 int변수를 double로도 바꾸고 해 봤지만 되지 않았다.

결국 자존심 상해하며 검색을 해보았는데

#include <iostream>
using namespace std;

int main(void)
{
    int a,b;
    cin>>a>>b;
    cout.precision(10);
    cout<<(double)a/b<<endl;
    return 0;
}

cout.precsion(10)으로 소수점 자릿수를 정해주지 않아 생긴 문제였다.

😭 ...

다음엔 비슷한 경우가 생길 경우 유의해줘야겠다.

 

그 외의 나머지는 단순히 결과 화면을 잘못 보았거나 하는 문제들이어서 너무 쉽게 보고 집중하지 않고 풀었나라는 생각이 들었다.

c++를 잘한다고 생각했는데 쉬운 부분에서 틀린 점들을 생각하면 너무 IDE의 의존도가 높지 않았나 생각해본다.

손코딩 하듯 맨 땅에 코드를 작성해도 잘 짤 수 있도록 연습해야겠다.