Tháng Sáu 26, 2020
If-Chỉ số BMI
Đề bài: VCT tính chỉ số khối cơ thể BMI (Body mass index) theo công thức BMI = W/H2, trong đó W là cân nặng của một người (tính bằng kg) và H là chiều cao của người đó (tính bằng mét) (theo công thức này, nếu BMI<18,5: người gầy; 18,5<=BMI<25: người bình thường; BMI>=25: người béo)
Đầu vào: 2 số thực lần lượt là cân nặng và chiều cao của một người, cách nhau một khoảng trắng
Đầu ra: Chỉ số BMI và thông báo người đó thuộc dạng Gay hay Binh thuong hay Beo
Ví dụ 1:
input:
66 1.72
output:
22.3 Binh thuong
Ví dụ 2:
input:
80 1.6
output:
31.3 Beo
Ví dụ 3:
input:
45.5 1.7
output:
15.7 Gay
Bạn chưa đăng nhập? Đăng nhập để Submit ngay!
5 Comments
Add a Comment
Bạn phải đăng nhập để gửi phản hồi.
bài này bị lỗi làm tròn ở test 2 hay sao vậy, mình test chỗ nào cũng đúng mà sao vào đây ko làm tròn dc vậy ad
Có vẻ 2 test case 2 và 3 xung đột về việc làm tròn.
– Test 2: nếu làm tròn lên thì đúng với ouput. Nhưng test 3 nếu làm tròn lên thì lại sai so với ouput.
– Ngược lại nếu làm tròn gần nhất( hoặc làm tròn xuống) thì test 3 đúng. Nhưng test 2 lại sai.
Em đag dùng C++ nên hơi mắc chỗ đó 🙂
mình dùng C cũng bị vậy
#include
#include
int main()
{
float a, b;
scanf(“%f %f”, &a, &b);
float bmi=a/(b*b);
if(bmi>=25.0)
{
printf(“%.1f Beo”, roundf(bmi*100)/100);
}else if(bmi<18.5){
printf("%.1f Gay", roundf(bmi*100)/100);
}else{
printf("%.1f Binh thuong", roundf(bmi*100)/100);
}
return 0;
}
Anh kiểm tra giúp em, sao em test ở dev c thì kq đúng. còn ở đây bị kq sai ở test 2 ạ!