frac



Frac в паскале

Автор Владимир Азупак задал вопрос в разделе Другие языки и технологии

Паскаль. Применение функции Frac : Почему 4.02/0.004=1005 (выводит сама программа, без всякой дробной части) , но нецелое и получил лучший ответ

Ответ от Капитан Гугл[гуру]
Все вычисления с плавающей запятой имеют определенную точность, поэтому нельзя сравнивать числа типа real обычным = (кроме тех случаев, когда нужно проверить точное равенство - например, скопировано ли число) ; надо делать так:
var eps;{погрешность обычно обозначают греческой буквой ε - эпсилон}
...
eps:=0.0001;
...
if abs(frac(n/b))< eps then ...
Ian
Мыслитель
(8645)
извиняюсь, но 2 и 0.5 легко представимы в двоичной системе, в отличие от 4.02 и 0.0004

Ответ от Ian[гуру]
Капитан прав, попробуй вывести еще строку writeln (frac(a/b)) - увидишь, что дробная часть ненулевая.
невозможно представить все десятичные числа с абсолютной точностью в двоичной системе.

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: Паскаль. Применение функции Frac : Почему 4.02/0.004=1005 (выводит сама программа, без всякой дробной части) , но нецелое

Что такое давление?
Давле́ние (P) — физическая величина, равная силе F, действующей на единицу площади поверхности
подробнее...
спросили в Randomness
Как решить задачи в Паскале?
Uses crt;
Var i :integer;
M :array[1..12] of integer;

Function
подробнее...

Paskal. Как округлять числа в паскале?
Frac Дробная часть числа с плавающей запятой

Int Целая часть числа с плавающей точкойподробнее...

Паскаль. Есть дробь, например 12,15 - нужно выделить целую часть в паскале.
Round(12.75) = 13 Округление чисел с плавающей запятой до целого числа
Trunc(12.75) = 12
подробнее...
спросили в Free Pascal
PASCAL - Мне необходимо округлить число в большую сторону
> то результат равен 0,02. а мне нужно любой результат округлять в большую сторону
Т. е.
подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:

Задача о 8 ферзях. паскаль
Забей все значения статически, чтобы каждый раз их не пересчитывать, и просто меняй их при нажатии
подробнее...

Вопросы на тему Паскаля, помогите
...
3. не существует операторов ввода/вывода данных (функции и процедуры к операторам не
подробнее...
Фрак на Википедии
Посмотрите статью на википедии про Фрак
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*