01/10/2018, 10:03

Làm thế nào in ra phần thập phân khi in bằng cout

cho em hỏi trong đoạn code dưới tại sao chỗ e+d là double+double tại sao lại ra kết quả là số nguyên ạ. em muốn thêm.0 đàng sau kết quả mà k đc

 #include <iostream>
 #include <iomanip>
 #include <limits>

 using namespace std;
 int main() {
     int i = 4;
     double d = 4.0;
     string s = "HackerRank ";
       int f;
     cin >> f;
     double e;
     cin >> e;
     fflush(stdin);
     string n;
     getline(cin,n);
     cout<<i+f<<endl;
     cout<<(d+e)*1.0<<endl;
     cout<<s<<n;
 	;
 return 0;
 }
HK boy viết 12:17 ngày 01/10/2018
  • Bạn muốn in ra chữ số thập phân khi dùng cout thì dùng setprecision. Kiểu như cout << setprecision(2) << fixed << d+e << endl;
    Bạn đang gán d=4.0 (=4) và e (chắc bạn nhập e là số nguyên) nên khi cout << (d+e)*1.0 compiler (?) tự động để đặt số lượng chữ số sau dấu phẩy thập phân, ở đây (d+e)*1.0 = d+e, mà d, e là số nguyên nên kết quả in ra mới là số nguyên.
  • Thừa dấu ; ở dòng thứ 3 từ dưới lên.
Bài liên quan
0