Протабулировать 1 функцию на интервале [a, b] с шагом h=0.01 Найти сумму значений функции в каждой точке - Free Pascal
Формулировка задачи:
2)Протабулировать 1 функцию на интервале [a, b] с шагом h=0.01
Найти сумму значений функции в каждой точке.
Решение задачи: «Протабулировать 1 функцию на интервале [a, b] с шагом h=0.01 Найти сумму значений функции в каждой точке»
textual
Листинг программы
uses Crt, Math; const h = 0.01; const eps = 0.00001; function foo(n : real) : real; begin foo := sin(n + 3.0) / exp((1. / 3) * ln(sqr(n + 3.0))); end; var a : real; b : real; tmp : real; begin Write('enter begin point a = '); ReadLn(a); Write('enter begin point a = '); ReadLn(b); if a > b then begin tmp := a; a := b; b := tmp; end; while a <= b do begin if abs(a + 3) < eps then begin Writeln('no range of definition at point x = ', a:3:1); end else begin Writeln('x = ', a:3:3, ' f(x) = ', foo(a):3:3); end; a := a + h; end; Writeln('Enjoy'); end.
Объяснение кода листинга программы
- Объявлены константы: шаг интервала h=0.01, погрешность вычислений eps=0.00001
- Объявлена функция foo(n:real):real, которая вычисляет значение функции в точке n
- Введены переменные a, b для обозначения границ интервала
- Пользователю предлагается ввести точки a и b
- Если точка a больше b, то происходит обмен значениями a и b
- Запускается цикл while, который выполняется, пока значение переменной a не станет больше b
- Внутри цикла проверяется, является ли точка a точкой определения функции (|a+3|<eps)
- Если точка является точкой определения, то выводится сообщение об этом
- Если точка не является точкой определения, то выводится значение функции в этой точке
- Значение переменной a увеличивается на шаг h
- После окончания цикла выводится сообщение
Enjoy
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д