Na pewno nie możesz wprowadzić całej liczby, ale możesz wpisać jakieś przybliżenie tej liczby. Przykładowo liczby 0.(3) też nie możesz dokładnie zapisać i dlatego ten program wypisze "Nie rowne!"
#include <iostream>
using namespace std;
int main()
{
float a = 1/3;
a *= 3;
if(a == 1)
cout<<"Rowne!";
else
cout<<"Nie rowne!";
return 0;
}
Możesz ewentualnie przekrztałcić liczbę na ułamek tak, jak ja w kodzie wyżej (metody matematyczne znajdziesz) ale wiedz, że kompilator (lub procesor, jeśli kompilator nie zoptymalizuje kodu) i tak zamieni to na wartość przybliżoną.
Przykładowo jeśli będziesz przechowywał swoją liczbę w zmiennej typu float (32 bit), to będzie ona równa 6.6738481521606445. Oczywiście jeśli użyjesz double, a jeszcze lepiej long double, to przybliżenie będzie lepsze.