אתגר חזרה #2
חלק מהיחידה יסודות במסלול ה-C של Coddy. שיעור 36 מתוך 63.
אתגר
קלצרו תוכנית שקוראת את המשקל של אדם (בק״ג) ואת הגובה שלו (במטרים), ואז:
- בודקת שכל קלט הוא מספר (
scanfמחזירה1)
אם המשקל או הגובה אינם מספר, הדפיסו:Invalid input type! - מוודאת שהמשקל הוא בין 30 ל-300 ק״ג
אם המשקל מחוץ לטווח, הדפיסו:Weight out of range! - מוודאת שהגובה הוא בין 1.0 ל-2.5 מטרים
אם הגובה מחוץ לטווח, הדפיסו:Height out of range! - אם כל הבדיקות עוברות, מחשבת ומדפיסה את ה-BMI (מדד מסת הגוף) עם ספרה אחת אחרי הנקודה העשרונית
- נוסחת BMI: weight / (height * height)
- מדפיסה את קטגוריית המשקל של האדם לפי ה-BMI:
- מתחת ל-18.5:
Underweight - 18.5 עד 24.9:
Normal weight - 25.0 עד 29.9:
Overweight - 30.0 ומעלה:
Obese
- מתחת ל-18.5:
דוגמה לפורמט הפלט עבור קלט תקין:
BMI: 24.8
Category: Normal weightנסו בעצמכם
#include <stdio.h>
int main() {
float weight, height, bmi;
int weight_result, height_result;
weight_result = scanf("%f", &weight);
height_result = scanf("%f", &height);
// בדקו את הקלט
// חשבו את ה-BMI
// קבעו את קטגוריית המשקל
// הדפיסו את התוצאות
return 0;
}כל השיעורים ביחידה יסודות
תרגלו בעצמכם: קומפיילר C אונליין