Salut! Exista vreo functie in C++ care sa afiseze primele x zecimale ale unui numar real fara sa le aproximeze? De exemplu, am numarul 2.189 si vreau sa se afiseze doar cu primele 2 zecimale, adica 2.18. Am folosit functia setprecision din libraria <iomanip>, dar imi afiseaza 2.19...
Răspunsuri la întrebare
Răspuns de
1
Răspuns:
#include <iostream>
#include <iomanip>
using namespace std;
float x, y;
int n;
int main()
{
cin >> x;
n=(int)(x*100);
y=1.0*n/100;
cout<<fixed<<setprecision(2)<<y;
}
Explicație:
e o soluţie....
using namespace std;
template string tostr(const T& t)
{
ostringstream os;
os< return os.str();
}
int main()
{
double x;
int a,i,j;
cout<<"Numarul : ";cin>>x;
cout<<"Dupa virgula : ";cin>>a;
string s=tostr(x);
char v[sizeof(s)];
strcpy(v,s.c_str());
int lg=strlen(v);
for(i=0; i {
cout< if(v[i]=='.')
break;
}
for(j=i+1;j<=i+a;j++)
cout<
return 0;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Istorie,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
Biologie,
9 ani în urmă
Scrisa sub forma de cod:
floor(x * pow(10, p)) / pow(10, p);