Predmet:Re: C Zadaci za ispit - pomoc
Ne poznajem naredbe C-a, ali bih da primetim da je kod 5 zadatka poenta u tome da se kao uslov ne uzme
pow(x, 0.3333) = round(pow(x, 0.3333))
vec
abs(pow(x,0.3333) - round(pow(x, 0.3333)) < 0.00001
Naime racunari kod izracunavanja vrse zaokruzivanje. Tako da je moguce da se razkuju u 17-toj decimali. Uostalom, kubni koren je pow(x, 0.33333333333...)
Probajte da provrtite kroz petlju, na primer od 1 do 100
If (pow(sqrt(x), 2) == x // da li je kvadrat korena nekog broja jednak tom broju
cout << "Isti su " << endl;
else
cout << "Nisu isti" << endl;
Iznenadicete se rezultatom!
Pravilo koje vazi uopste u programiranju:
Ako imamo
a = neko izracunavanje;
b = neko drugo izracunavanje ili neki broj;
nepravilno je
if (a == b)
vec treba
if ( abs(a - b) < 0.00001)
jer je moguce da se zbog zaokruzivanja pri racunanju razlika javi na ko zna kojoj decimali
ps. radi se o pseudo – kodu, ne poznajem sintaksu C-a