[백준 4766] 일반 화학 실험 (C#, C++) - soo:bak
작성일 :
문제 링크
설명
일정 시간 간격으로 측정한 온도 데이터들을을 입력받아,
이전 온도와의 차이를 소수점 둘째 자리까지 출력하는 문제입니다.
- 첫 번째 온도는 기준값으로 저장되며 출력하지 않습니다.
- 두 번째 값부터는 이전 값과의 차이를 구해 출력합니다.
- 입력은
999
가 나올 때까지 계속되며,999
는 종료 신호이므로 출력하지 않습니다. - 출력은 소수점 둘째 자리까지 고정 형식으로 표시해야 합니다.
접근법
- 첫 번째 실수형 값을 입력받아 이전 온도로 저장합니다.
- 이후 반복문을 통해 현재 온도를 하나씩 입력받습니다.
- 입력값이
999
라면 종료하고, 아니라면 이전 온도와의 차이를 계산하여 출력합니다. - 현재 온도를 이전 온도로 갱신하며 다음 반복을 준비합니다.
Code
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
using System;
class Program {
static void Main() {
double prev = double.Parse(Console.ReadLine());
while (true) {
double now = double.Parse(Console.ReadLine());
if (now == 999) break;
Console.WriteLine((now - prev).ToString("F2"));
prev = now;
}
}
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
double prev; cin >> prev;
while (true) {
double now; cin >> now;
if (now == 999) break;
cout.setf(ios::fixed); cout.precision(2);
cout << now - prev << "\n";
prev = now;
}
return 0;
}