Ошибка "Нет перегруженной подпрограммы с такими типами параметров" - PascalABC.NET (24426)
Формулировка задачи:
ошибка возникает на 21 строке
Решение задачи: «Ошибка "Нет перегруженной подпрограммы с такими типами параметров"»
textual
Листинг программы
program p9; var a, b, x, p, c: array [1..50] of real; pr: array [1..50] of string; i, n: integer; begin writeln('Введите количество пар Х и Р'); Readln(n); for i := 1 to n do begin writeln('Введите значение P'); Readln(p[i]); writeln('Введите значение X'); Readln(x[i]); if (sqrt(p[i] * p[i] * p[i]) + (x[i] * x[i]) + 4.5) >= 0 then begin if (sin(sqrt(p[i] * p[i] * p[i]) + (x[i] * x[i]) + 4.5)) >= 0 then begin a[i] := (sin(sqrt(p[i] * p[i] * p[i]) + (x[i] * x[i]) + 4.5)); if (ln(x[i] * x[i] * x[i]) + abs(x[i] * x[i] * x[i] * x[i] - 2 * p[i])) >= 0 then begin b[i] := (x[i] * x[i] - exp(ln(x[i] * x[i] * x[i]) + abs(x[i] * x[i] * x[i] * x[i] - 2 * p[i]))); if b[i] <> 0 then begin c[i] := a[i] / b[i]; pr[i] := ('0') end else c[i] := 0; pr[i] := ('Ошибка.Знаменатель равен нулю.') end else c[i] := 0; pr[i] := ('Ошибка.Значение степени меньше нуля.') end else c[i] := 0; pr[i] := ('Ошибка.Числитель меньше нуля.') end else c[i] := 0; pr[i] := ('Ошибка.Под корнем стоит число меньше нуля.'); end; for i := 1 to n do begin writeln(' X | P | C | Примечания'); if (pr[i] = '') then begin writeln(x[i]:5:3, '|', p[i]:5:3, '|', c[i]:5:3, '|') end else begin writeln(x[i]:5:3, '|', p[i]:5:3, '|', '|', pr[i]) end end end.
Объяснение кода листинга программы
- Объявлены переменные: a, b, x, p, c (массивы), pr (массив строк), i, n (целые числа).
- Пользователю предлагается ввести количество пар Х и Р.
- В цикле от 1 до n выполняются следующие действия:
- Пользователю предлагается ввести значение P.
- Пользователю предлагается ввести значение X.
- Вычисляется значение a по формуле a[i] := sin(sqrt(p[i] p[i] p[i]) + (x[i] * x[i]) + 4.5).
- Вычисляется значение b по формуле b[i] := (x[i] x[i] - exp(ln(x[i] x[i] x[i]) + abs(x[i] x[i] x[i] x[i] - 2 * p[i]))).
- Если b[i] не равно нулю, то вычисляется значение c по формуле c[i] := a[i] / b[i].
- Если b[i] равно нулю, то значение c[i] устанавливается равным 0 и в примечаниях записывается сообщение об ошибке
Знаменатель равен нулю
. - Если a[i] меньше нуля, то значение c[i] устанавливается равным 0 и в примечаниях записывается сообщение об ошибке
Числитель меньше нуля
. - Если под корнем стоит число меньше нуля, то значение c[i] устанавливается равным 0 и в примечаниях записывается сообщение об ошибке
Под корнем стоит число меньше нуля
.
- В цикле от 1 до n выводятся значения x, p, c и примечания.
- Если примечания пустые, то выводится значение x, p, c.
- Если примечания не пустые, то выводится значение x, p,
|
, значение примечаний.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д