반응형

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

 

1008번: A/B

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

www.acmicpc.net

 


 

  • 문제

 

기본적인 사칙연산 문제입니다. 

 


 

  • 문제 풀이

문제를 단계별로 나눠서 스도코드로 나타내 보겠습니다. 

 

  1. 두 정수를 입력받는다. 
  2. 입력받은 첫번째 수를 두번째 수로 나눈다. 
    1. 이때 두 번째 수가 0이면 다시 입력받는다. 
  3. 첫 번째 수를 두 번째 수로 나눈 결과값을 출력한다. 

Tip 1 : 3번에서 나눌 때 (double)을 통해서 명시적으로 형변환시켜준다. (이때, 첫 번째 수 혹은 두 번째 수에만 해도 자동적으로 나머지에 대해서도 형변환이 일어난다. )

 

Tip 2: 형식 지정자에서 %뒤에 .9를 붙이면 소수점 9번째까지 출력 가능

#include <stdio.h>

int main(void) {
  int A, B;	//입력받을 두 수를 선언
  double C;
  scanf("%d %d", &A, &B);	//두 수를 scanf 함수를 통해서 입력받음
  while(B==0){
  	  scanf("%d %d", &A, &B);	/*B가 0이면 안 되므로 
      				B가 0이면 두 수를 scanf 함수를 통해서 입력받음*/
  }
  C=(double)A/(double)B;	//입력받은 첫 번째 수를 두 번째 수로 나눈다. 
  printf("%.9lf", C);	//첫 번째 수에서 두 번째 수로 나눈 결과값을 printf 함수를 통해서 출력
  return 0;
}
  • 마무리

 기본적인 입출력에서 소수점 자리, 형식 지정자를 신경써 줍시다. 사소한 곳에서 실수가 일어나면 큰 프로그램을 진행할 때 어려움이 발생할 수 있습니다. 

반응형

'백준' 카테고리의 다른 글

[C언어] 백준 10998번: A*B  (0) 2023.09.27
[C언어] 백준 1001번: A-B  (0) 2023.09.27
[C언어] 백준 2557번: Hello World  (0) 2023.09.23
[C언어] 백준 1000번: A+B  (0) 2023.09.17

+ Recent posts