• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Вопрос по Pascal

  • Автор темы denis79513
  • Дата начала
D

denis79513

Точнее 2 вопроса, первый, допустим у меня переменной с типом real присваивается значение 5 а на экране это отображается как 5,0000000000000 Е0 как сделать чтобы нулики все справа уходили?
2 вопрос, выделение корня из числа: sqrt(число) выглядит так, а как сделать проверку, извлекается ли корень из числа? Чтобы сначала сделать проверку, и если корень извлекается то тогда его извлекать чтобы ошибка не вылетала.
 
D

Dock1100

1. writeln(chislo:8:2); 8- количество знаков целой части, 2 - количество знаков дробной части
2. if chislo < 0 then writeln('inncorect') else ... ;
 
D

denis79513

по поводу второго вопроса, отрицательные числа это понятно, но из 2 то корень не извлекается, хотя 2>0
 
D

Dock1100

... из 2 то корень не извлекается, хотя 2>0
Это почему?
sqrt(2) = 1,414213562373.....
Корень можно извель из любого положительного числа и нуля, другой вопрос что будетли целым полученый корень, вы это имеете виду?
 
D

denis79513

Это почему?
sqrt(2) = 1,414213562373.....
Корень можно извель из любого положительного числа и нуля, другой вопрос что будетли целым полученый корень, вы это имеете виду?
да, но допустим 0,5 это корень из 0,25 он нацело извлекается но число не целое, т.е нужно проверить, извлекается ли из числа корень нацело.
 
A

AndrewSpider

да, но допустим 0,5 это корень из 0,25 он нацело извлекается но число не целое, т.е нужно проверить, извлекается ли из числа корень нацело.
ну а тупо возвести в квадрат и проверить, не догодались?))
Код:
var a,b:real;
begin
a:=4;
b:=sqrt(a);
if (b*b=a) then writeln('sqrt(',a,') = ',b) else writeln('sqrt - бесконечная дробь');
end.
Если хотите ещё проверте на не отрицательность числа=)
Не очень стабильный метод, но бывает работает, когда корень не извлекается и получается бесконечная дробь=)
 
D

Dock1100

C математической точки зрения, это не правильно поскольку 2=sqr(sqrt(2))=sqrt(2)*sqrt(2)=sqrt(4)=2,
но в тут в принципе может прокатить, поскольку точность вычисления будет не очень большой(допустимой размером типа переменной).
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!