Ошибка "Нет перегруженной подпрограммы с такими типами параметров" - 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.

Объяснение кода листинга программы

  1. Объявлены переменные: a, b, x, p, c (массивы), pr (массив строк), i, n (целые числа).
  2. Пользователю предлагается ввести количество пар Х и Р.
  3. В цикле от 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 и в примечаниях записывается сообщение об ошибке Под корнем стоит число меньше нуля.
  4. В цикле от 1 до n выводятся значения x, p, c и примечания.
  5. Если примечания пустые, то выводится значение x, p, c.
  6. Если примечания не пустые, то выводится значение x, p, |, значение примечаний.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.231 из 5
Похожие ответы