Блок 2: вывод найденного корня.
Структурная схема подпрограммы процедуры Saveизображена на Рис. 4.6.
Блок 1: вывод запроса названия файла;
Блок 2: ввод названия файла;
Блок 3: обращение к процедуре подключения файла с введённым именем;
Блок 4: обращение к процедуре открытия файла для записи;
Блок 5: обращение к процедуре вычисления корня уравнения PolDel;
Блок 6: вывод в файл полученного значения корня;
Блок 7: обращение к процедуре закрытия файла.
Листинг программы находится в приложении А.
6. КОНТРОЛЬНЫЙ ПРИМЕР И АНАЛИЗ РЕЗУЛЬТАТА
Для контрольного примера найдём значение корня на интервале от 0 до 5. Найдём этот корень графически с использованием программы MicrosoftExcel (см. табл 6.1., рис. 6.1).
Найдём этот корень при помощи программы (см. рис 6.2.-6.3). Полученное при помощи программы значение корня соответствует расчётному.
Таблица. 6.1
Расчетные точки графика функции f(x)=x2-x-6, полученные при помощи программы MicrosoftExcel
x | y |
0 | -6 |
1 | -6 |
2 | -4 |
3 | 0 |
4 | 6 |
5 | 14 |
Рис. 6.1.
Рис. 6.1.
Рис. 6.2.
Для работы с программой нужно запустить программу POLDEL.EXE, находящийся на дискете в приложении D, занимающий 20 кБ.
После запуска программы на экране появляется меню программы в котором содержатся следующие пункты (см. Прил. Б).
1) 1-Ввести данные
2) 2-Отобразить результат
3) 3-Сохранить результат в файл
4) 0-Выход
Для ввода исходных данных необходимо в меню нажать 1 ввести по очереди значение левой границы интервала, затем правой, затем точности вычисления.
Для просмотра результата вычисления необходимо в меню нажать 2. По окончанию просмотра нажмите любую клавишу.
Для сохранения результата необходимо нажать в главном меню 3 и после появления запроса ввести имя файла, в который следует записать результат.
Для выхода из программы необходимо в меню нажать 0.
В данной курсовой работе была разработана программа, решающая нелинейное уравнение. Для его решения был выбран метод половинного деления.
1. Кетков Ю.Л., Кетков А.Ю. Практика программирования: Бейсик, Си, Паскаль. Самоучитель. – СПб.: БХВ-Петербург, 2001. 408 с.: ил.
2. Любиев О.Н., Филиппенко Л.Н., Филиппенко Г.Г. Методические указания к выполнению курсовой работы по дисциплинам «Программирование на ЯВУ, Информатика», Новочеркасск, ЮРГТУ, 2003г. – 256 с.
3. Фаронов В.В. «Турбо Паскаль 7.0» Начальный курс. Учебное пособие. Издание 7-е, переработанное. – М.: «Нлидж», издатель Молчалева С.В., 2001.-576 с. с ил.
4. Абрамов В.Г., Трифонов Н.П. Введение в язык Паскаль. – М. :Наука, 1988.-320 с.
ЛИСТИНГ ПРОГРАМЫ
Program PolD;
Uses
CRT;
Var
a,b,e,x:real;
Function F(var x:real):real;
begin
f:=sqr(x)-x-6;
end;
{================================}
Procedure PolDel(a,b,e:real; var x:real);
begin
x:=(a+b)/2;
while abs(F(x))>e do
begin
if F(a)*F(x)>0 then a:=x
else b:=x;
x:=(a+b)/2;
end;
end;
{===============================}
Procedure Vvod;
begin
Clrscr;
Writeln('Vvedite levuju granicu intervala');
Readln(a);
Writeln('Vvedite pravuju granicu intervala');
ReadLn(b);
Writeln('Vvedite tochnost');
ReadLn(e);
end;
{===============================}
Procedure Vivrez;
begin
Clrscr;
PolDel(a,b,e,x);
Writeln('Uravnenie x^2-x-6 na intervale (',a:0:2,',',b:0:2,')');
Writeln('Imeet reshenie ',x:0:2);
ReadKey
end;
{===============================}
Procedure Save;
var
f:text;
S:string;
begin
Clrscr;
Writeln('Vvedite nazvanie faila');
ReadLn(S);
Assign(f,s);
{$I-}
ReWrite(f);
{$I+}
PolDel(a,b,e,x);
Writeln(f,'Uravnenie x^2-x-6 na intervale (',a:0:2,',',b:0:2,')');
Writeln(f,'Imeet reshenie ',x:0:2);
Close(f)
end;
{===============================}
var
Key:Char;
Begin
repeat
Clrscr;
Writeln('1-Vvesti dannie');
Writeln('2-Otobrazit rezultat');
Writeln('3-Sohranit rezulat v fail');
Writeln('0-Vihod');
Key:=ReadKey;
Case Key of
'1':Vvod;
'2':VivRez;
'3':Save;
end;
until Key='0';
end.
МЕНЮ ПРОГРАММЫ
ДИСКЕТА С ПРОГРАММОЙ