drwindows97
Goto Top

Gibt es den Befehl ipart in cplusplus

Hallo,
Ich schreibe zurzeit ein Programm, das Kommazahlen verwert.

Dabei brauche ich eure Hilfe,
wie teile ich in c++ Kommazahlen in Ganzzahl (vor dem Komma) und Nachkommastellen auf. Ich weiß, dass es in (Ti) Basic dafür die Befehle fpart und ipart gibt.


Danke für die Hilfe

Content-ID: 179800

Url: https://administrator.de/forum/gibt-es-den-befehl-ipart-in-cplusplus-179800.html

Ausgedruckt am: 22.12.2024 um 08:12 Uhr

vorstieg
vorstieg 31.01.2012 um 16:38:47 Uhr
Goto Top
Hi

ganz allgemein:

vor_komma = wandle kommazahl in einen int ;
nach_komma = kommazahl - vor_komma (*100 bei 2 Nachkommastellen);

Servus vorstieg
DRwindows97
DRwindows97 31.01.2012 um 22:09:38 Uhr
Goto Top
Zitat von @vorstieg:
Hi

ganz allgemein:

vor_komma = wandle kommazahl in einen int ;
nach_komma = kommazahl - vor_komma (*100 bei 2 Nachkommastellen);

Servus vorstieg



Danke für die schnelle Antwort.

Aber gibt es wirklich keinen ipart ähnlichen Befehl ?
rubberman
rubberman 01.02.2012 um 01:12:16 Uhr
Goto Top
Hallo DRwindows97.

Befehl? Und warum sollte es? Dafür könntest du dir deine eigenen (Mini-)Funktionen definieren.
In der Art, wie vorstieg bereits beschrieben hat - Beispiel:
#include <iostream>

int ipart (float f) {return static_cast<int>(f);}
float fpart (float f) {return f - static_cast<int>(f);}

int main()
{
    float f = 3.141593;

    std::cout << "ipart: " << ipart(f) << "\nfpart: " << fpart(f) << std::endl;  
    return 0;
}
Brauchst du es genauer oder Support für größere Zahlen, gibt es auch noch andere Typen als float und int...

Grüße
rubberman
DRwindows97
DRwindows97 01.02.2012 um 15:41:15 Uhr
Goto Top
Zitat von @rubberman:
Hallo DRwindows97.

Befehl? Und warum sollte es? Dafür könntest du dir deine eigenen (Mini-)Funktionen definieren.
In der Art, wie vorstieg bereits beschrieben hat - Beispiel:
> #include <iostream>
> 
> int ipart (float f) {return static_cast<int>(f);}
> float fpart (float f) {return f - static_cast<int>(f);}
> 
> int main()
> {
>     float f = 3.141593;
> 
>     std::cout << "ipart: " << ipart(f) << "\nfpart: " << fpart(f) << std::endl;  
>     return 0;
> }
> 
Brauchst du es genauer oder Support für größere Zahlen, gibt es auch noch andere Typen als float und int...

Grüße
rubberman

Danke rubberman , du hast mir sehr geholfen.