Вычисление таблицы значений функции - PascalABC.NET
Формулировка задачи:
Помогите составить программу на Pascal для вычисления таблицы значений функции y = (x + 1) / (sqrt (4-x * x)), если х изменяется от a до b с шагом h(Границы интервала a и b и шаг h вводит пользователь).
Внимание! В программе надо учитывать область определения функции - то есть те значения х, при которых функция не имеет значения. Для этого в цикле используйте оператор IF ... THEN ... ELSE и выводите на экран соответствующее сообщение.
Решение задачи: «Вычисление таблицы значений функции»
textual
Листинг программы
procedure err(msg : String); begin WriteLn(msg); Halt; end; const zero = 1e-8; begin var a := ReadLnReal('a ='); var b := ReadLnReal('b ='); var h := ReadLnReal('h ='); if a > b then err('Неверно задан интервал.'); if h < zero then err('Неверно задан шаг интервала.'); if (b - a) / h < zero then err('Нельзя разделить данный интервал на отрезки по '+h); WriteLn('Табулирование функции y = (x+1) / в€љ(4-xВІ)'); WriteLn(#32*5+'x'+#32*5+'|'+#32*5+'y'); WriteLn('-'*11+'|'+'-'*12); repeat if 4-a*a > zero then WriteLn( String.Format('{0,10:0.00000} | {1,10:0.0000000}', a, (a + 1) / sqrt(4 - a * a) )) else WriteLn( String.Format('{0,10:0.00000} | {1}', a, 'нет решения') ); a += h; until a > b; WriteLn('-'*11+'|'+'-'*12); end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д