Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методические указания

.doc
Скачиваний:
24
Добавлен:
10.04.2015
Размер:
61.95 Кб
Скачать

МИНОБРНАУКИ РФ

Государственное образовательное учреждение

высшего профессионального образования

«ПЕНЗЕНСКАЯ ГОСУДАРСТВЕННАЯ ТЕХНОЛОГИЧЕСКАЯ АКАДЕМИЯ»

(ПГТА)

Кафедра «Информационные компьютерные технологии»

Дисциплина «Информатика»

Дятков В.С.

Методические указания

для выполнения курсовой (контрольной) работы

на тему:

«Разработка программы сложной структуры»

Пенза, 2010 г.

Общее задание на контрольную работу содержит следующие пункты:

1 По варианту задания составить программу на языке Паскаль. Вычисление всех функций и численных методов оформить в виде подпрограмм.

2 Составить схему программы алгоритма на каждую подпрограмму.

3 Программа должна выводить результаты работы на гибкий диск в файл Rez.txt (диск сдается вместе с контрольной работой).

4 Проиллюстрировать найденное решение построением соответствующей диаграммы в Excel.

5 Оформление контрольной работы (текст и схемы программы) сделать в текстовом редакторе Word на листах формата А4. В нижнем колонтитуле вставить ФИО и номер зачетки.

6 Структура контрольной работы:

  • титульный лист;

  • содержание;

  • задание;

  • описание заданного численного метода (методов);

  • схемы программ алгоритмов;

  • листинг программы;

  • полученные результаты работы программы и график в Excel;

  • выводы;

  • список использованной литературы.

Пусть Вам дано следующее

Задание

Дана исходная функция: F(x) = 8Cos(x) – x – 6

Найти приближенное значение корня с точностью E=10-5 методом Эйткена-Стеффенсона. Построить график заданной функции в Excel для определения интервала, в котором лежит значение корня. Подставить найденное значение корня в исходное уравнение и определить достигнутую точность решения.

Описание заданного численного метода

Методом Эйткена-Стеффенсона решаются нелинейные уравнения вида

x = f(x)

путем многократного применения итерационной формулы

xn+1 = f(xn)

до тех пор, пока соблюдаются условие

xn+1 - xn ,

где  - заданная погрешность вычисления корня.

Алгоритм решения следующий:

1 Задаем начальное приближение xn = x0 (значение x0 , рядом с которым лежит корень, выбирается по графику функции y = F(x)), построенному в Excel).

2 Находим первое x1 = f(x0) и второе x2 = f(x1) приближения.

3 Вычисляем

4 Проверяем условия: xn+1 - xn>  и x0 – 2x1 +x2  0. Если эти условия соблюдаются, то идем к п. 1, в противном случае процесс прекращается и получаем значении корня, равное xn+1.

Метод Эйткена-Стеффенсона при сложных F(x) имеет ускоренную сходимость (по сравнению с методом простых итераций). Однако при простых функциях F(x) время решения практически не уменьшается, т.к. число дополнительных операций в этом методе существенно больше, чем в методе простых итераций.

График исходной функции

Из графика видно, что корень заданной функции лежит в районе 0,6. Выбираем значение x0 = 0,55.

Схемы программ

Схема главной программы

Схема программы функции f(x)

Схема программы метода Эйткена-Стеффенсона

Да

Нет

Нет

Да

Листинг программы

program MES;

uses crt;

Var x,xk,a,b,c,e: real; {Раздел описания переменных}

Rez: text; {Результирующий файл}

Function f(x:real): real; {Подпрограмма вычисления функции}

begin

f := 8*Cos(x)-x-6;

end;

Procedure ES(x,e:real;Var xk:real); {Подпрограмма вычисления корня методом }

begin {Эйткена-Стеффенсона}

repeat

a:=x; b:=f(x); x:=f(x);

c:=a-2*b+f(x);

if c<>0 then x:=(a*f(x)-b*b)/c;

until abs(x-f(x))<=e;

xk:=x;

end;

Begin {Основная программа}

Assign(Rez,'Rez.txt');

clrscr;

Rewrite(Rez);

writeln(' Метод Эйткена-Стеффенсона');

write(' Введите X0='); readln(x);

write(' Введите точность Е='); readln(e);

ES(x,e,xk); {Вызов подпрограммы}

Writeln(' Корень =',xk:12:9);

Writeln(Rez,'Корень =',xk:12:9);

readln;

close(rez);

end.

Полученные результаты

Метод Эйткена-Стеффенсона

Введите X0=0.55

Введите точность Е=0.00001

Корень = 0.600486488

Проверка полученного решения

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

при x = 0.600486488

F(x) = 8Cos(x) – x – 6 = 0,0000001157, т.е. полученная точность выше заданной!

Выводы

1 Полученное значение корня найдено с достаточной точностью:

0,0000001157 < Е = 0.00001

2 При реализации программы вычисление всех функций и численного метода оформлено в виде подпрограмм, что дает следующие преимущества:

  • подпрограммы независимы друг от друга, что позволяет поручать их создание различным разработчикам;

  • подпрограмма имеет небольшое количество операторов, что удобно для отладки и поиска ошибок;

  • подпрограммы легко добавлять к главной программе и удалять из нее;

  • при отладке всей программы подпрограммы можно подключать поочередно: отладив одну, можно подключать другую.

  • сократить время отладки, так как программирование и отладку основной программы и подпрограмм могут осуществлять параллельно разные программисты.

Согласно пункту задания №3 программа выводит результаты работы на гибкий диск (в программе это диск d:) в файл Rez.txt.

Литература

  1. Информатика. Базовый курс. 2-е издание / Под ред. С.В. Симоновича. – СПб.: Питер, 2006.– 640 c.;

  2. Фаронов В.В. Турбо Паскаль 7.0. Начальный курс: учебное пособие. – М: КНОРУС, 2006. – 576 с.

  3. ГОСТ 2.105. ЕСКД. Общие требования к текстовым документам. Минск: Межгос. совет по стандартизации, метрологии и сертификации; М.: Изд-во стандартов.;

  4. ГОСТ 7.32—2001. Отчет о научно-исследовательской работе. Структура и правила оформления. – Взамен ГОСТ 7.32-91; введ. 2002–07–01. – Минск: Межгос. совет по стандартизации, метрологии и сертификации; М.: Изд-во стандартов, cop. 2002. – (Система стандартов по информации, библиотечному и издательскому делу).

  5. Заварыкин В.М. и др. Численные методы: Учеб. пособие для студентов физ.-мат. спец. пед. ин-тов/В.М. Заварыкин, В.Г. Житомирский, М.П. Лапчик. –М.: Просвещение, 1990. –176 с.: ил.

  6. Анатолий Степанов - Информатика: Учебник для вузов. 6-е изд. Издательство: Питер, 2010 г. -720с.

Теперь вернемся на стр. 2 нашего отчета и добавим Содержание: (Вставка, Ссылка, Оглавление и указатели).