C++ :: Aufgabe #290 :: Lösung #2
3 Lösungen

#290
WHtR (Waist to Height Ratio) berechnen
Anfänger - C++
von JKooP
- 10.05.2020 um 09:17 Uhr
Schreibe ein Programm zur Ermittlung des WHtR- Wertes aus Taillenumfang + Körpergröße und der daraus resultierenden Bewertung.
Es sollen sowohl das Geschlecht (m/w) als auch das Kindesalter bzw. der Altersfaktor für Erwachsene berücksichtigt werden.
Viel Spaß
Es sollen sowohl das Geschlecht (m/w) als auch das Kindesalter bzw. der Altersfaktor für Erwachsene berücksichtigt werden.
Viel Spaß
#2

von basic (1310 Punkte)
- 27.09.2020 um 22:30 Uhr

#include <iostream> using namespace std; void classifybysex(double whtr) { char c; cout << "\nGeschlecht eingeben:\n"; cout << "Männlich > 15 Jahre (m)\n"; cout << "Weiblich > 15 Jahre (w)\n"; cout << "Kind < 15 Jahre (k)\n"; cout << "Eingabe: "; cin >> c; cout << "\n"; switch(c) { case 'm': if(whtr <= 0.34) { cout << "Starkes Untergewicht\n"; } else if(whtr >= 0.35 && whtr <= 0.42) { cout << "Untergewicht\n"; } else if(whtr >= 0.43 && whtr <= 0.52) { cout << "Normalgewicht\n"; } else if(whtr >= 0.53 && whtr <= 0.57) { cout << "Übergewicht\n"; } else if(whtr >= 0.58 && whtr <= 0.62) { cout << "Adipositas\n"; } else { cout << "Extreme Adipositas\n"; } break; case 'w': if(whtr <= 0.34) { cout << "Starkes Untergewicht\n"; } else if(whtr >= 0.36 && whtr <= 0.41) { cout << "Untergewicht\n"; } else if(whtr >= 0.42 && whtr <= 0.48) { cout << "Normalgewicht\n"; } else if(whtr >= 0.49 && whtr <= 0.53) { cout << "Übergewicht\n"; } else if(whtr >= 0.54 && whtr <= 0.57) { cout << "Adipositas\n"; } else { cout << "Extreme Adipositas\n"; } break; case 'k': if(whtr <= 0.34) { cout << "Starkes Untergewicht\n"; } else if(whtr >= 0.35 && whtr <= 0.45) { cout << "Untergewicht\n"; } else if(whtr >= 0.46 && whtr <= 0.51) { cout << "Normalgewicht\n"; } else if(whtr >= 0.52 && whtr <= 0.63) { cout << "Übergewicht\n"; } else { cout << "Extreme Adipositas\n"; } break; default: cout << "Falsche Eingabe\n"; } } void classifybyage(double whtr) { int age; cout << "\nAlter eingeben: "; cin >> age; cout << "\n"; if(age < 15) { if(whtr <= 0.34) { cout << "Untergewicht\n"; } else if(whtr >= 0.35 && whtr <= 0.45) { cout << "Normalgewicht\n"; } else if(whtr >= 0.46 && whtr <= 0.51) { cout << "Übergewicht\n"; } else if(whtr >= 0.52 && whtr <= 0.63) { cout << "Adipositas\n"; } else { cout << "Extreme Adipositas\n"; } } else if(age >= 15 && age <= 39) { if(whtr < 0.4) { cout << "Untergewicht\n"; } else if(whtr >= 0.4 && whtr <= 0.5) { cout << "Normalgewicht\n"; } else if(whtr >= 0.51 && whtr <= 0.56) { cout << "Übergewicht\n"; } else if(whtr >= 0.57 && whtr <= 0.68) { cout << "Adipositas\n"; } else { cout << "Extreme Adipositas\n"; } } else if(age >= 40 && age <= 50) { int a = age; while(a <= 50) { whtr += 0.01; a++; } if(whtr < 0.4) { cout << "Untergewicht\n"; } else if(whtr >= 0.4 && whtr <= 0.5) { cout << "Normalgewicht\n"; } else if(whtr >= 0.51 && whtr <= 0.56) { cout << "Übergewicht\n"; } else if(whtr >= 0.57 && whtr <= 0.68) { cout << "Adipositas\n"; } else { cout << "Extreme Adipositas\n"; } } else if(age > 50) { if(whtr < 0.4) { cout << "Untergewicht\n"; } else if(whtr >= 0.5 && whtr <= 0.6) { cout << "Normalgewicht\n"; } else if(whtr >= 0.61 && whtr <= 0.66) { cout << "Übergewicht\n"; } else if(whtr >= 0.67 && whtr <= 0.78) { cout << "Adipositas\n"; } else { cout << "Extreme Adipositas\n"; } } } double calcwhtr(double ws, double h) { return ws / h; } int main() { char query, c; double waistsize, height, whtr; do { cout << "Klassifikation nach Geschlecht (g)\n"; cout << "Klassifikation nach Alter (a)\n"; cout << "Auswahl: "; cin >> query; cout << "\n"; switch(query) { case 'g': cout << "Tailienumfang (in cm): "; cin >> waistsize; cout << "Körpergröße (in cm): "; cin >> height; whtr = calcwhtr(waistsize, height); classifybysex(whtr); break; case 'a': cout << "Tailienumfang (in cm): "; cin >> waistsize; cout << "Körpergröße (in cm): "; cin >> height; whtr = calcwhtr(waistsize, height); classifybyage(whtr); break; default: cout << "Falsche Eingabe\n\n"; break; } cout << "\nNächste Eingabe? (j/n): "; cin >> c; cout << "\n"; } while((query != 'a' || query != 'g') && c != 'n'); }
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1