Курсовая работа: Информатика Алгоритмизация и программирование

a:=-12;b:=0;h:= 1;

n1:=(b-a)/h; n:=round(n1);

for i:=0 to n do

begin

if x<-7 then y:= sin((3.14/12)*x)

else

if x<=-3 then y:= 2*cos((3.14/6)*x+(3.14/12))

else

y:= 5* sin((3.14/12)*x);

writeln('f(',x:3:1,')=',y:6:2);

x:=x+1;

end;

readln;

end.

Решение этой же задачи было проведено в Excel. При вычислении функции использовалась логическая функция ЕСЛИ. Лист с решением задачи размещен ниже.

Программу написанную на языке Паскаль копирую и вставляю в проект, затем исправляю существенные различия.

Задача 3

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

9 -3 0

РЕШЕНИЕ

Алгоритм метода половинного деления заключается в следующем:

1. Выбрать нулевое приближение x0 =( a+ b)/2.

2. Если f( x0 )=0, то x0 очевидно является корнем уравнения.

3. Если f( x0 )≠0, то проверить условия f( x0 f( a)<0 и f( x0 f( b)<0 и выбрать тот из отрезков [ a, х0 ], [х0 , b], на границах которого выполнено одно из этих условий (т.е. функция f(х) имеет на концах отрезка противоположные знаки).

4. Выбранный отрезок вновь разделить пополам и вычислить значение x1 .

5. Для х1 проверить условие f(х1 )=0 и, если оно не выполняется, вернуться к п. 4.

6. Процесс деления отрезков пополам продолжить до тех пор, пока длина отрезка, на концах которого функция имеет противоположные знаки, не будет меньше e .

7. Принять, что условие f( xk ) = 0 выполнено, если

Ниже приведены блок-схема алгоритма и листинг программы на языке Паскаль.


Program lab3;

К-во Просмотров: 547
Бесплатно скачать Курсовая работа: Информатика Алгоритмизация и программирование