Протабулировать функцию - Pascal (80374)

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

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

Помогите решить данное задание Создать программу табулирования ф-ции z = f (x, y) в прямоугольнику [a, b]x[c, d] с шагом табуляции h Функция - lg(x+y+sqrt(sqr(x)+sqr(y))) a=2 b=4 c=1 d=3 h=0.20

Решение задачи: «Протабулировать функцию»

textual
Листинг программы
  1. uses crt;
  2. const a=2;
  3.       b=4;
  4.       c=1;
  5.       d=3;
  6.       h=0.2;
  7. function f(x,y:real):real;
  8. begin
  9. f:=ln(x+y+sqrt(sqr(x)+sqr(y)))
  10. end;
  11. var t:array[0..15,0..15] of real;
  12.     n,i,j:byte;
  13. begin
  14. n:=round((b-a)/h)+1 ;
  15. for i:=1 to n do
  16. t[i,0]:=a+(i-1)*h;
  17. for i:=1 to n do
  18. t[0,i]:=c+(i-1)*h;
  19. for i:=1 to n do
  20. for j:=1 to n do
  21. t[i,j]:=f(t[i,0],t[j,0]);
  22. for i:=1 to (n+1)*6+2 do write('-');
  23. writeln;
  24. write('| x\y |');
  25. for i:=1 to n do
  26. write(t[0,i]:6:2);
  27. writeln('|');
  28. for i:=1 to (n+1)*6+2 do write('-');
  29. writeln;
  30. for i:=1 to n do
  31.  begin
  32.   write('|',t[i,0]:5:2,'|');
  33.   for j:=1 to n do
  34.   if i+j>0 then write(t[i,j]:6:2);
  35.   writeln('|');
  36.  end;
  37. for i:=1 to (n+1)*6+2 do write('-');
  38. end.
  39.  
  40. {while x<b+h/2 do
  41.  begin
  42.   y:=c;
  43.   while y<d+h/2 do
  44.    begin
  45.     write(' x=',x:4:1,' y=',y:4:1,' f=',f(x,y):5:2);
  46.     y:=y+h;
  47.    end;
  48.  writeln;
  49.  x:=x+h;
  50. end;
  51. end.

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

  1. Подключение к модулю crt.
  2. Задание констант: a=2, b=4, c=1, d=3, h=0.2.
  3. Создание функции f с аргументами x и y, возвращающей значение типа real. В функции вычисляется значение по формуле ln(x+y+sqrt(sqr(x)+sqr(y))).
  4. Объявление переменных: t - двухмерный массив размером 16x16 с типом real, n, i и j - переменные типа byte.
  5. Инициализация переменной n как round((b-a)/h)+1.
  6. Заполнение первого столбца массива t значениями от a до b с шагом h.
  7. Заполнение первой строки массива t значениями от c до d с шагом h.
  8. Вычисление и заполнение значений массива t с использованием функции f.
  9. Вывод горизонтальной черты.
  10. Вывод заголовка таблицы.
  11. Вывод горизонтальной черты.
  12. Обход значений массива t и вывод их в виде таблицы, а также визуализация границ ячеек таблицы.
  13. Вывод горизонтальной черты. Код также содержит закомментированную часть с циклами while, но они в настоящее время отключены из-за использования блок-комментариев curly brackets.

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


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

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

10   голосов , оценка 4 из 5

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

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

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