Помогите срочно!!! По информатике! Нужно составить программу в Паскале!!!! Я его плохо...

0 голосов
20 просмотров

Помогите срочно!!! По информатике! Нужно составить программу в Паскале!!!! Я его плохо понимаю! Молю!!!! Само задание во вложении!!!


image

Информатика (381 баллов) | 20 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

В языке Паскаль отсутствует операция извлечения кубического корня, а также операция возведения числа в степень, отличную от двух. Поэтому приходится использовать логарифмирование с последующим потенцированием.
\displaystyle \sqrt[3]{x^2+ \frac{1}{y}}=\left (x^2+ \frac{1}{y} \right )^ \frac{1}{3}=e^{\frac{1}{3}ln(x^2+ \frac{1}{y})}
Это выражение накладывает на параметры некоторые ограничения.
image0 \end {cases} " alt=" \begin {cases} y \ne 0 \\ \displaystyle x^2+ \frac{1}{y} >0 \end {cases} " align="absmiddle" class="latex-formula">
Если первое условие вытекает из исходного выражения, то второе появляется при не совсем эквивалентной замене операции извлечения кубического корня логарифмированием и последующим потенцированием. Дело в том, что операция извлечения кубического корня определена для любого аргумента. а логарифмирование - только для положительного. Для полноценной замены надо анализировать аргумент логарифма и в зависимости от его значения (отрицательное, ноль, положительное) определять результат.
Но при этом мы получим алгоритм с ветвлением, а у нас задание написать линейный алгоритм.

var
  x,y,r:real;
begin
  Write('Введите значения x и y: ');
  Read(x,y);
  r:=exp(ln((sqr(x)+1/y))/3);
  Writeln('Вычисленное значение: ',r)
end.

Тестовое решение:
Введите значения x и y: 13.54 -2.6
Вычисленное значение: 5.6768630662591

(142k баллов)
0

Вау. Такие знания! Вы программист?

0

Да и об этом в моем профиле написано

0

В профиль я не заходила. Просто заметила вопрос в категории, а тут такое... В хорошем смысле

0

Написал, потому что предыдущий ответ неверен: он содержит условный оператор.

0

Хоть и не в тему, да и писать такие вопросы надо в лич.-сообщения - и все же, Вы на пьедестале лучших решающих оказались как - потому что много баллов, или Вы бываете в Сервисе очень часто, или же много решено заданий, нет нарушений?

0

Просто интересно, тоже хочу быть там... :)

0

Не могу понять, почему моё решение неправильное? Потому что переменные не риловские?

0

Мне Ваше решение как раз совсем непонятно, может я чего не понимаю, но по-моему read должен быть до begin, и первый write совсем не к месту (такое ощущение, что содрали откуда-то)) ) А к типу переменных я уж не думаю, что будут сильно придираться.

0

Да, Вы действительно не понимаете, но не "чего-то", а довольно многое.