lab_inf / лабораторная работа по информатике №3
.docxФедеральное агентство по образованию, государственное образовательное учреждение высшего профессионального образования Новгородский Государственный Университет имени Ярослава Мудрого.
_____________________________________________________________________________
Кафедра автомобильного транспорта.
Отчёт по лабораторной работе №3
«Программирование алгоритмов итерационной циклической структуры»
Работу выполнил:
студент гр. 2061
Ермолаев А. А.
«___»_________2012 года.
Работу проверил:
Профессор
Архипова С. В.
«___»_________2012 года.
Цель работы - овладение практическими навыками разработки и программирования алгоритмов итерационной циклической структуры; приобретение дальнейших навыков по отладке и тестированию программ.
Задания для самостоятельной подготовки
1. Изучить:
- организацию итерационных циклов;
- возможности языка программирования для организации таких циклов;
- приемы программирования - уточнение корня уравнения методом итераций, вычисление суммы членов бесконечного ряда, накопления суммы.
2. Разработать алгоритмы решения задач для заданий А и Б.
3. Составить программы решения задач для заданий А и Б.
4. Вычислить предел суммы членов ряда, указанного в задании Б.
Задание к работе
Задание A
Методом итераций вычислить на ЭВМ корень уравнения вида f(х) = 0 , расположенный на интервале (в соответствии с вариантом задания). Определить также число итераций, необходимое для нахождения корня.
Вариант |
Уравнение |
Отрезок |
Точность |
6 |
[0;0,85] |
0,5*10-4 |
Задание Б
Вычислить на ЭВМ значение суммы членов бесконечного ряда (см табл. 3.2) с заданной точностью. На печать вывести значение суммы и число членов ряда, вошедших в сумму.
Сравнить полученное на ЭВМ значение суммы членов ряда со значением, вычисленным вручную.
Вариант |
Сумма членов ряда |
Значение |
Точность вычисления |
6 |
_ _ _ _ _ |
10-4 |
Спецификация данных:
Имя переменной |
Обозначение |
Тип |
Структура (диапазон) |
Как используется |
Имя в программе |
a |
a |
real |
2,9*E-39…1,7*E38 |
входная |
a |
b |
b |
real |
2,9*E-39…1,7*E38 |
входная |
b |
x1 |
x1 |
real |
2,9*E-39…1,7*E38 |
выходная |
x1 |
x0 |
x2 |
real |
2,9*E-39…1,7*E38 |
входная |
x0 |
delta |
delta |
real |
2,9*E-39…1,7*E38 |
входная |
delta |
eps |
eps |
real |
2,9*E-39…1,7*E38 |
входная |
eps |
N |
N |
integer |
-32768…32767 |
выходная |
N |
Тестовые данные:
в программе x1=1/(3+sin(3,6*x0))
a=1; b=3; eps=0,1
Блок схема:
Текст программы:
Протокол выполнения задания:
Контрольные вопросы:
-
Что такое итерационный циклический процесс? Его отличия от цикла с заданным числом повторений.
Итерационный цикл (iterative loop). Цикл, число повторений в котором заранее не известно. Такие циклы встречаются при решении задач методами последовательных приближений (методами итераций), позволяющих найти решение с наперед заданной точностью. Например, решение некоторого уравнения методом итераций с заданной точностью или суммирование сходящегося ряда с заданной точностью. Принцип построения логического условия, определяющего повторение циклического процесса вычислений в обоих случаях одинаков. Цикл выполняется, пока некоторая монотонно убывающая величина Д остается по абсолютной величине больше наперед заданного положительного числа е, т. е. |Д| > Е'. Для метода последовательных приближений под Д можно понимать величину, характеризующую погрешность полученного приближения, например, разность между двумя соседними приближениями.
-
Какие два этапа необходимо выделить при нахождении корней уравнений?
Первый-приведение изначальной функции к виду x=f(x).Второй-нахождение корней уравнения путем метода итераций.
-
В чем заключается сущность метода итераций при уточнении корня? Как определить число итераций, необходимых для получения значения корня с требуемой точностью?
Это пошаговое приближение к более точному корню от грубого,поиск точки схождения графиков функций f(x)=0 и f(x)=x.Число итераций соответствует количеству повторений цикла приближения корня к заданной точности.
-
Каковы условия сходимости метода итераций?
Если производная от f(x)=x меньше или равна единице то сходимость осуществима.
-
Почему при программировании итерационных процессов не используются индексированные переменные для обозначения последовательных приближений к корню? Сколько соседних приближений одновременно используется в вычислениях?
Потому что число приближений заранее неизвестно. Два приближения.
-
Каково условие выхода из цикла при вычислении значения суммы бесконечного ряда?
Модуль значения суммы бесконечного ряда не должен привышать значения заданной точности.
-
Какие операторы организуют цикл в программе вычисления суммы членов бесконечного ряда?
While,do,abs,begin,end,:=.
-
Почему при вычислении значения текущего члена ax используется простая переменная, а не индексированная?
Потому что число членов ряда зависит от заданной точности.
-
Зачем используются рекуррентные соотношения для вычисления значений члена ряда?
Потому что значение члена ряда задается реккурентным соотношением в котором меняется лишь порядковый номер этого члена,с помощью чего можно вычислить сумму бесконечного ряда.