Не компилируется программа - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

не работает программа в чем причина?

Решение задачи: «Не компилируется программа»

textual
Листинг программы
program OTC;
 
uses
  Crt;
const
  c = 2.2E-7;
  r = 9.1E3;
  tr = 5E-3;
  n = 50;
  otr = 100;
 
var
  st, t: real;
  npp: word;
  f: text;
 
function integral(vid: byte; verx, niz: real; n: word; Time: real): real;
var
  d, y, S, tau: real;
  k :integer;
begin
  d := (verx - niz) / n;
  S := 0;
  for k := 0 to n do
  begin
    tau := niz + k * d;
    case vid of
      1: y := (1 - exp((-1) * (6 * tau / tr))) * ((1 + sqrt(5)) * exp((-1) * ((sqrt(5) + 3) * (Time - tau) / (2 * r * c)) - (1 - sqrt(5)) * exp((-1) * (3 - sqrt(5)) * (Time - tau) / (2 * r * c))) / (2 * sqrt(5) * r * c));
      2: 
        y := (1 - exp(-3)) * exp((-1) * (6 * tau / tr - 3) * (6 * tau / tr - 3)) * ((1 + sqrt(5)) * exp((-1) *
        ((sqrt(5) + 3) * (Time - tau) / (2 * r * c)) - (1 - sqrt(5)) * exp((-1) * (3 - sqrt(5)) * (Time - tau) /
        (2 * r * c))) / (2 * sqrt(5) * r * c));
    end;
    if k <> 0 then
    begin
      if(k mod 2) = 0 then
      begin
        if k <> n then y := 2 * y
      end
      else
        y := 4 * y;
    end;
    S := S + y; end;
    integral := d * S / 3; 
end;
begin
  ClrScr; Assign(f, 'OTC.doc');
  Rewrite(f); st := tr / n; t := 0;
  npp := 0;
  writeln(f, ' N/n Время,mc Uвых,B');
  while t < (tr / 2) do
  begin
    npp := npp + 1;
    writeln(f, npp:5, (1000 * t):9:2, integral(1, t, 0, otr, t):20:10);
    t := t + st;
  end;
  while t <= 3 * tr + st do
  begin
    npp := npp + 1;
    writeln(f, npp:5, (1000 * t):9:2,
    integral(1, tr / 2, 0, otr, t) + integral(2, t, tr / 2, otr, t):10:8);
    t := t + st;
  end;
  Close(f);
end.

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

Список элементов кода:

  1. Объявление переменных и констант:
    • c = 2.2E-7 (константа, значение 2.2 * 10^-7)
    • r = 9.1E3 (константа, значение 9.1 * 10^3)
    • tr = 5E-3 (константа, значение 5 * 10^-3)
    • n = 50 (переменная, значение 50)
    • otr = 100 (переменная, значение 100)
    • st, t (переменные, значение tr / n и 0 соответственно)
    • npp (переменная, используется для нумерации строк в файле)
    • f (переменная, используется для записи в файл)
    • vid (переменная, используется в функции integral, значение 1 или 2)
    • verx, niz (переменные, используются в функции integral, значение t и 0 соответственно)
    • niz (переменная, используется в функции integral, значение t)
    • S (переменная, используется в функции integral, значение 0)
    • tau (переменная, используется в функции integral, значение tau)
    • k (переменная, используется в цикле функции integral, значение от 0 до n)
    • d (переменная, используется в функции integral, значение (verx - niz) / n)
    • y (переменная, используется в функции integral, значение вычисляется в процессе)
    • tau (переменная, используется в функции integral, значение tau)
    • Time (переменная, используется в функции integral, значение время)
    • integral (функция, принимает vid, verx, niz, n, Time и возвращает значение интеграла)
  2. Запись заголовка и основной части программы:
    • program OTC;
    • uses Crt;
    • const c, r, tr, n, otr;
    • var st, t, npp, f;
    • function integral(vid: byte; verx, niz: real; n: word; Time: real): real;
    • var d, y, S, tau: real;
    • k: integer;
    • begin
    • ClrScr; Assign(f, 'OTC.doc');
    • Rewrite(f); st := tr / n; t := 0;
    • npp := 0;
    • writeln(f, ' N/n Время,mc Uвых,B');
    • while t < (tr / 2) do
    • begin
    • npp := npp + 1;
    • writeln(f, npp:5, (1000 * t):9:2, integral(1, t, 0, otr, t):20:10);
    • t := t + st;
    • end;
    • while t <= 3 * tr + st do
    • begin
    • npp := npp + 1;
    • writeln(f, npp:5, (1000 * t):9:2, integral(1, tr / 2, 0, otr, t) + integral(2, t, tr / 2, otr, t):10:8);
    • t := t + st;
    • end;
    • Close(f);
    • end.
  3. Вывод списка элементов кода:
    • Не компилируется программа

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


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

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

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