Вычислить и вывести на экран в виде таблицы значения функции, заданной графически - Free Pascal (932)

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

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

Вычислить и вывести на экран в виде таблицы значения функции, заданной графически, на интервале Хнач до Хкон с шагом dx. Интревал и шаг вводить с клавиатуры. Таблицу снабдить заголовком и шапкой,

Решение задачи: «Вычислить и вывести на экран в виде таблицы значения функции, заданной графически»

textual
Листинг программы
  1. var x, dx, sx, ex: real;
  2.     i: integer;
  3. begin
  4.   writeln('Enter margins:');
  5.   write('x1 = '); readln(sx);
  6.   write('x2 = '); readln(ex);
  7.   repeat
  8.     write('Step = '); readln(dx);
  9.     if dx = 0 then writeln('Enter non-zero step!')
  10.   until dx <> 0;
  11.   if sx > ex
  12.     then begin
  13.       x := sx;
  14.       sx := ex;
  15.       ex := x
  16.     end;
  17.   if dx < 0 then dx := -dx;
  18.   writeln('Tabulation of function:');
  19.   writeln('    | -x - 2,               if -3 <= x < -2');
  20.   writeln('    | sqrt(1 - sqr(x + 1)), if -2 <= x < -1');
  21.   writeln('y = | 1,                    if -1 <= x < 1');
  22.   writeln('    | 3 - 2 * x,            if 1 <= x < 2');
  23.   writeln('    | -1,                   if 2 <= x <= 5');
  24.   writeln('    | undefined,            otherwise');
  25.   writeln('+---------+---------+');
  26.   writeln('|    x    |    y    |');
  27.   writeln('+---------+---------+');
  28.   for i := 0 to round(abs(ex - sx) / dx) do
  29.     begin
  30.       x := sx + dx * i;
  31.       write('|', x:9:3, '|');
  32.       if (-3 <= x) and (x < -2)
  33.         then write(-x - 2:9:3)
  34.         else if (-2 <= x) and (x < -1)
  35.           then write(sqrt(1 - sqr(x + 1)):9:3)
  36.           else if (-1 <= x) and (x < 1)
  37.             then write(1.0:9:3)
  38.             else if (1 <= x) and (x < 2)
  39.               then write(3 - 2 * x:9:3)
  40.               else if (2 <= x) and (x <= 5)
  41.                 then write(-1.0:9:3)
  42.                 else write('undefined');
  43.       writeln('|')
  44.     end;
  45.   write('+---------+---------+');
  46.   readln
  47. end.

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

  1. В первой части кода объявляются переменные и происходит ввод значений с помощью функции readln.
  2. Вторая часть кода занимается расчетом значений функции и формированием таблицы.
  3. Если интервал изменения x не подходит под условие -3 <= x < -2, то выводится значение -x - 2.
  4. Если интервал изменения x не подходит под условие -2 <= x < -1, то выводится значение sqrt(1 - sqr(x + 1)).
  5. Если интервал изменения x не подходит под условие -1 <= x < 1, то выводится значение 1.
  6. Если интервал изменения x не подходит под условие 1 <= x < 2, то выводится значение 3 - 2 * x.
  7. Если интервал изменения x не подходит под условие 2 <= x <= 5, то выводится значение -1.
  8. Если интервал изменения x не подходит ни под одно из условий, то выводится значение undefined.
  9. С помощью цикла for происходит вывод значений функции в виде таблицы.
  10. Значение x округляется до трех знаков после запятой с помощью функции round.
  11. Для каждого значения x вычисляется соответствующее значение y.
  12. Выводится шапка таблицы.
  13. Выводится сетка таблицы.
  14. Таблица выводится на экран.
  15. Ввод данных с помощью функции readln прекращается командой readln.

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


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

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

13   голосов , оценка 3.923 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы