Vid inmatning av decimaltal skall som bekant punkt användas. Du kan prova att mata in det i en sträng och sedan byta ut punkten mot ett komma. Efter detta använder du en strstream eller stringstream för att konvertera informationen till en float.Komma och punkt vid inmatning.
Men, på något vis borde det väl gå att använda kommatecknet också?
Hur kan man ändra följande kod för att kommatecknat skall kunna användas?
#include <iostream.h>
#include <stdlib.h>
int main()
{
float testvalue;
cout << "Ange ett decimaltal: ";
cin >> testvalue;
cout << testvalue;
cout << endl << endl;
system("PAUSE");
return 0;
}Sv: Komma och punkt vid inmatning.
För övrigt bör du ansluta dig till den nya standarden,
#include <iostream>
till exempel.
Dessutom är en float ganska osäker. Den har i regel bara 6 siffrors noggrannhet. Använd double istället...