wartość zawracana przez funkcję
Ostatnio zmodyfikowano 2020-12-15 19:09
wwojtas Temat założony przez niniejszego użytkownika |
wartość zawracana przez funkcję » 2020-12-14 21:50:39 Witam ! Robię zadanie ze SPOJA: FR_02_06 - BMI Link: https://pl.spoj.com/problems/FR_02_06/ Realizacja za pomocą vector. Dlaczego funkcja obliczBMI zwraca mi wartość 1? #include <iostream> #include <string> #include <vector>
using namespace std;
vector < string > niedowaga; vector < string > wartoscPrawidlowa; vector < string > nadwaga;
float obliczBMI( float a, float b ) { b = b / 100; float bmi = a /( b * b ); return bmi; }
void niedowagaBMI( string imie ) { niedowaga.push_back( imie ); }
void wartoscPrawidlowaBMI( string imie ) { wartoscPrawidlowa.push_back( imie ); }
void nadwagaBMI( string imie ) { nadwaga.push_back( imie ); }
int main() { int LiczbaTestow; cin >> LiczbaTestow; for( int i = 0; i < LiczbaTestow; i++ ) { string imie; float masaCialaWKilogramach = 0, wysokoscWCentymetrach = 0, bmi = 0; cin >> imie >> masaCialaWKilogramach >> wysokoscWCentymetrach; obliczBMI( masaCialaWKilogramach, wysokoscWCentymetrach ); if( bmi < 18.5 ) niedowagaBMI( imie ); if( bmi >= 18.5 && bmi < 25 ) wartoscPrawidlowaBMI( imie ); if( bmi >= 25 ) nadwagaBMI( imie ); } cout << "niedowaga" << endl; for( int i = 0; i < niedowaga.size(); i++ ) { cout << niedowaga[ i ] << endl; } cout << endl; cout << "wartosc prawidlowa" << endl; for( int i = 0; i < wartoscPrawidlowa.size(); i++ ) { cout << wartoscPrawidlowa[ i ] << endl; } cout << endl; cout << "nadwaga" << endl; for( int i = 0; i < nadwaga.size(); i++ ) { cout << nadwaga[ i ] << endl; } return 0; }
[ \ cpp ]
|
|
pekfos |
» 2020-12-14 21:55:20 Dlaczego funkcja obliczBMI zwraca mi wartość 1? Skąd wiesz że zwraca 1? |
|
wwojtas Temat założony przez niniejszego użytkownika |
» 2020-12-14 21:58:16 Wykorzystywałem system("pause") i cout.
Wartość przed wejściem w instrukcje if w funkcji głównej wyświetla 1.
|
|
pekfos |
» 2020-12-14 22:03:59 Ja bym powiedział że wartość to zero, w końcu przypisujesz zero do bmi i tej wartości używasz w warunkach. Co Ty wypisywałeś, że wyszło 1? |
|
wwojtas Temat założony przez niniejszego użytkownika |
» 2020-12-15 19:09:12 Super! Dzięki pekfos!
Działa |
|
« 1 » |