Ty zwracany przez funckje float liczba z przecinkiem nie dziala
Ostatnio zmodyfikowano 2014-03-28 23:25
colorgreen19 Temat założony przez niniejszego użytkownika |
Ty zwracany przez funckje float liczba z przecinkiem nie dziala » 2014-03-28 21:31:46 Może problem banalny ale jakos nie umiem sobie z nim poradzic mam kod float GetProportion() const { cout <<( m_endValue - m_startValue ) / m_lenght << endl; return static_cast < float >(( m_endValue - m_startValue ) / m_lenght ); }
przykładowo endValue = 200, startValue = 0, m_lenght = 400; wg dzialania powino wyjsc 0.5, funkcja zwraca 0, czyli obcina czesc po przecinku. Funkcja dziala normalnie gdy ma zwrócic wynik bez przecinka. CO robie zle? |
|
Monika90 |
» 2014-03-28 21:49:54 int dzielone przez int daje int, rzutuj m_length na float |
|
colorgreen19 Temat założony przez niniejszego użytkownika |
» 2014-03-28 21:59:42 przerobilem nawet na to return static_cast < float >(( m_endValue - static_cast < float >( m_startValue ) ) / static_cast < float >( m_lenght ) ); i nadal nie dziala |
|
Monika90 |
» 2014-03-28 22:10:21 Pewnie masz błąd gdzie indziej, pokaż wiecej kodu. |
|
colorgreen19 Temat założony przez niniejszego użytkownika |
» 2014-03-28 23:25:26 nie, przepraszam, dziala. nie zrobilem tego rzutowania w cout, ktorym sprawdzalem czy to dziala. Dzieki za pomoc, zamykam |
|
« 1 » |