Mam za zadanie wprowadzić kilka zmiennych za pomocą różnych komend. Wszystko działa poza komendą double, która zamiast wyświetlać dokładnie taką liczbę zaokrągla ją. Próbowałem to obejść korzystając z komendy cout.precision(15) ale wtedy do liczby z floata dodaje jakies losowe rzeczy. Jeśli ktos wie proszę o wytłumaczeni dlaczego tak się dzieje.
#include <iostream>
using namespace std;
int main ()
{
cout.precision(15);
short a = 85;
unsigned int b = 42520;
float c = 111.567;
double d = 15482.457862; // zmienna double zaokrągla liczbę do zaledwie jednej liczby po przecinku
char e = 'K';
char f = 0x4A;
char g = 0x2A;
cout<<a<<endl;
cout<<b<<endl;
cout<<c<<endl;
cout<<d<<endl;
cout<<e<<endl;
cout<<f<<endl;
cout<<g<<endl;
system ("PAUSE");
return 0;
}