5pliT, спасибо за ответ.
Ваш код работает. Но в моей программе все равно выдается та же ошибка. В ней я считываю х, подставляю его в формулу double z = f(x), а потом беру acos(z). Провожу проверку того, что z из [-1;1] :
Код:
if(z>1 || z<-1){Edit9->Text = FloatToStr(z);};
exe-файл в Edit9 пишет 1! Но неравенство-то строгое. Т.е. он почему-то считает что значение 1, которое принимает z строго больше 1, а потому и не может посчитать арккосинус.
У кого-нибудь есть идеи почему он себя так странно ведет?
Чтобы все работало было просто дописано:
Код:
if(z>1){ z=1;};
if(z<-1){z=-1;};
Но все же интересно, как сделать так, чтобы все работало "честно"?