Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Ty zwracany przez funckje float liczba z przecinkiem nie dziala

Ostatnio zmodyfikowano 2014-03-28 23:25
Autor Wiadomość
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
C/C++
float GetProportion() const
{
    cout <<( m_endValue - m_startValue ) / m_lenght << endl;
    //cout<<"End: "<<m_endValue<<" Start "<<m_startValue<<" m_lenght "<<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?
P-107360
Monika90
» 2014-03-28 21:49:54
int dzielone przez int daje int, rzutuj m_length na float
P-107362
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
P-107363
Monika90
» 2014-03-28 22:10:21
Pewnie masz błąd gdzie indziej, pokaż wiecej kodu.
P-107365
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
P-107369
« 1 »
  Strona 1 z 1