Editorial for C++ Bài 1.A2: Chuyển đổi tốc độ
Submitting an official solution before solving the problem yourself is a bannable offence.
Lời giải chi tiết:
Đầu tiên, các bạn cần khai báo kiểu dữ liệu của biến \(a\) dựa vào khoảng giá trị của đề bài đưa \((1 \leq a \leq 10^6)\). Đây là biến đại diện cho số có đơn vị \(km/h\).
Bước 2, các bạn dùng lệnh cin
để nhập vào biến a vừa khai báo ở trên.
Bước 3, các bạn khởi tạo một biến (ví dụ tên biến là b
), đây là biến đại diện cho số có đơn vị \(m/s\). Chú ý kiểu dữ liệu của biến vừa tạo dựa vào khoảng giá trị đề bài đưa. Gợi ý công thức chuyển đổi từ \(m/s\) sang \(km/h\): \(b (m/s) = \frac{a (km/h) \times 1000}{3600}\)
Bước 4, in ra kết quả theo yêu cầu đề bài, sử dụng lệnh cout
để in ra, chú ý câu lệnh fixed << setprecision()
, trong dấu ()
là số chữ số lấy sau dấu phẩy. Ở đây, 1LL * b
dùng để chuyển đổi giá trị của b
thành kiểu dữ liệu long long
để đảm bảo hiển thị đúng theo yêu cầu Output của đề bài. Nếu không có câu lệnh này, chương trình sẽ in ra theo kiểu dữ liệu long double
.
#include <bits/stdc++.h>
using namespace std;
int main(){
long double a, b;
cin >> a;
b = a * 1000 / 3600;
cout << fixed << setprecision(2);
cout << 1LL * b <<'\n';
return 0;
}
Comments