Как округлить число до 2-3 знаков после запятой на «pascal.A.B.C» если выдается ошибка?

делал прогу для вычисления дискриминанта на pascal ,так вот,при вычисление x1 и x2 выдает ошибку:Ошибка времени выполнения: Значение было недопустимо малым или недопустимо большим для Int32.
86f9446b3ca64e95b53b0cc0acee41a5.jpg
Я так понял что большей диапазон чисел и в int32 не помещаться. Как это решить?
  • Вопрос задан
  • 16235 просмотров
Решения вопроса 1
georgey1999
@georgey1999 Автор вопроса
...
b8072b4d9df84b0fa0f88f7dd18da9ec.jpg
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
SagePtr
@SagePtr
Еда - это святое
А зачем округлять промежуточные значения? Округляйте уже конечный результат, либо вообще не округляйте его, а уже выводите в нужном формате.
Ответ написан
Комментировать
Rou1997
@Rou1997
На сигнатуру функции смотрите.
function Round(X: real): longint;
Ответ написан
Комментировать
@Mercury13
Программист на «си с крестами» и не только
Обычно в учебных работах (и даже не в учебных — именно так работает Excel) не округляют, а выводят с округлением.
writeln(x1:0:3);
writeln(x2:0:3);

Каких-то продвинутых средств округления, которые округляют дробное число до i-го знака я не вижу.
Кроме того, вы подсказали, с каким Паскалем вы имеете дело, я загрузил его и повторил прошлую ошибку — такая ошибка происходит именно что из-за округления NaN.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы