- •11 «Б» класс, мбоу «Средняя общеобразовательная школа № 27»
- •Введение
- •Метод половинного деления
- •Теоретическая часть
- •1.1. Метод половинного деления
- •1.2. Метод хорд
- •1.3. Метод касательных
- •1.4. Комбинированный метод хорд и касательных
- •Практическая часть
- •Компьютерная модель построения графика функции на языке программирования Free Pascal
- •Компьютерная модель метода половинного деления.
- •Компьютерная модель метода хорд.
- •Компьютерная модель метода касательных
- •Компьютерная модель комбинированного метода
- •Сравнительный анализ методов.
- •Заключение
Компьютерная модель построения графика функции на языке программирования Free Pascal
//Установка графического режима экрана, описание переменных, необходимых при //работе программы, задание функции
Uses Graph,Crt;
label 1;
var gr,gm,n,i:integer;
x,y,A,B,E,C:real;
function f(x:real): real;
begin
f:=x*x*x-sin(x);
end;
begin
gr:=0;
InitGraph (gr,gm, '');
if GraphResult < > grOk then Halt (1);
SetColor (3); //задание цвета
//построение системы координат
Line (200,100,200,400);
Line (450,270,100,270);
Line (200,100,195,105);
Line (200,100,205,105);
Line (450,270,445,265);
Line (450,270,445,275);
OutTextXY (455,270, 'x');
OutTextXY (185,100, 'y');
OutTextXY (230,280, '1');
OutTextXY (150,280, '-1');
OutTextXY (210,240, '1');
OutTextXY (210,300, '-1');
//шкала по оси Х
x:=110;
while x<450 do
begin
line (trunc(x),265,trunc(x),275);
x:=x+30
end;
//шкала по оси Y
y:=120;
while y<400 do
begin
line (195,trunc(y),205,trunc(y));
y:=y+30
end;
//построение графика
x:=-3;
while x<3 do
begin
x:=x+0.001;
y:=f(x);
PutPixel (trunc(x*30)+200,-trunc(y*30)+270,5)
end;
Для
построения графика используется
алгоритмическая конструкция «цикл».
График строится путем построения точек
с координатами (х;
у)
значения аргумента меняются от
-3 до
3 с шагом 0,001, а значения функции вычисляются
по формуле
.
Полученные точки строим с помощью
оператора PutPixel,
в скобках указываем координаты точек,
которые надо построить и номер цвета,
которым будет построен график.
Координаты точек, которые строятся, должны быть целыми числами, поэтому используется функция trunc, чтобы отбросить дробную часть.
Пиксель – это очень маленькая точка экрана, поэтому для построения графика функции координаты х и y необходимо умножить на величину единичного отрезка который я взяла (т.е. на 30, тогда увеличивается масштаб). Начало компьютерной системы координат расположено в левом верхнем углу, а наша система координат смещена на 200 пикселей по оси Х и на 270 пикселей по оси Y, поэтому прибавляем 200 и 270. Ось Y на компьютере направлена сверху вниз, наша ось Y снизу вверх, поэтому еще необходим знак «минус» перед значением функции y.
График
функции
.
По графику функции можно сделать вывод, что рассмотренное уравнение имеет три корня, расположенные на отрезках [-1; -0,7], [-0,3, 0,3], [0,7; 1].
Далее в пунктах 2.2 – 2.5 будут рассмотрены компьютерные модели второй части программы приближенного решения уравнения.
Компьютерная модель метода половинного деления.
CloseGraph; // закрытие графического режима и возврат в текстовый режим
write ('vvedi kolichestvo korney ');
readln (n);
for i:=1 to n do
begin
write ('vvedite levuy granicu otrezka ');
readln (A);
write ('vvedite pravuy granicu otrezka ');
readln (B);
write ('vvedite tochnost ');
readln (E);
Repeat
C:=(A+B)/2;
writeln(c:10:8);
if abs (f(C))<=0.0001 then goto 1;
if f(A)*f(C)<0
then B:=C
else A:=C
until (B-A)/2<=E;
1: writeln ('koren uravneniya ', c:10:8);
end;
Результаты компьютерного эксперимента
vvedi kolichestvo korney 3
vvedite levuy granicu otrezka -1
vvedite pravuy granicu otrezka -0.7
vvedite tochnost 0.001
-0.85000000
-0.92500000
-0.96250000
-0.94375000
-0.93437500
-0.92968750
-0.92734375
-0.92851563
koren uravneniya -0.92851563
vvedite levuy granicu otrezka -0.3
vvedite pravuy granicu otrezka 0.3
vvedite tochnost 0.001
0.00000000
koren uravneniya 0.00000000
vvedite levuy granicu otrezka 0.7
vvedite pravuy granicu otrezka 1
vvedite tochnost 0.001
0.85000000
0.92500000
0.96250000
0.94375000
0.93437500
0.92968750
0.92734375
0.92851563
koren uravneniya 0.92851563
Таким
образом, решения уравнения
