информатика / 1+2+3 +4+5 лаб работа ручной счет Excel Mcad СИ++
.pdfФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«НИЖЕГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ им. Р.Е. АЛЕКСЕЕВА»
ИНСТИТУТ РАДИОЭЛЕКТРОНИКИ И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
Кафедра «Прикладная математика»
Примеры выполнения лабораторных работ по дисциплине Информатика (2 семестр)
Методические указания к лабораторным работам для студентов всех направлений Института транспортных систем (ИТС) дневной формы обучения
Нижний Новгород 2019
Состовители: Н.В. Галина,О.И. Чайкина
УДК 651.3.06
Примеры выполнения лабораторных работ по дисциплине Информатика (2 семестр) Методические указания к лабораторным работам для студентов всех направлений Института транспортных систем (ИТС) дневной формы обучения / НГТУ; сост.: Н.В. Галина, О.И. Чайкина, 2019 53 с.
Изложены примеры выполнения лабораторных работ по дисциплине Информатика (2 семестр).
Научный руководитель А.А. Куркин Редактор Э.Б. Абросимова
Подписано в печать |
. Формат 60 х 84 1/16. Бумага газетная. |
Печать офсетная. Усл. печ. л. |
. Уч. изд. л. 1.0. Тираж 100 экз. Заказ 627. |
Нижегородский государственный технический университет им. Р.Е. Алексеева. Типография НГТУ. 603950, Нижний Новгород, ул. Минина, 24.
© Нижегородский государственный технический университет им. Р.Е. Алексеева, 2018
ЛАБОРАТОРНАЯ РАБОТА №1
Решение нелинейного уравнения с одной неизвестной. 1.Шаговый метод.
Постановка задачи. Для данного нелинейного уравнения x2-5 x+6=0 с одной неизвестной величиной на промежутке [2,2;3,5] найти интервал изоляции корня с шагом h=0,15
Ручной счет
x |
f(x) |
f(xi)*f(xi+1) |
x0=2,2 |
x02 – 5* x0+6=2,22 -5*2,2+6=-0,160 |
|
x1= x0+h=2,2+0,15=2,35 |
x12 – 5* x1+6=2,352 -5*2,35+6= - 0,228 |
f(x0)*f(x1)= |
|
|
(-0,160)*(-0,228)>0 |
|
|
|
x2= x1+h=2,35+0,15=2,5 |
x22 – 5* x2+6=2,52 -5*2,5+6= - 0,250 |
f(x1)*f(x2)= |
|
|
(-0,228)*( - 0,250)>0 |
|
|
|
x3= x2+h=2,5+0,15=2,65 |
x32 – 5* x3+6=2,652 -5*2,65+6= - 0,228 |
f(x2)*f(x3)= |
|
|
(- 0,250)*(-0,228)>0 |
|
|
|
x4= x3+h=2,65+0,15=2,8 |
x42 – 5* x4+6=2,82 -5*2,8+6= - 0,160 |
f(x3)*f(x4)= |
|
|
(-0,228)*(-0,160)>0 |
|
|
|
x5= x4+h=2,8+0,15=2,95 |
x52 – 5* x5+6=2,952 -5*2,95+6= - 0,047 |
f(x4)*f(x5)= |
|
|
(-0,160)*(-0,047)>0 |
|
|
|
x6= x5+h=2,95+0,15=3,1 |
x62 – 5* x6+6=3,12 -5*3,1+6=0,110 |
f(x5)*f(x6)= |
|
|
( - 0,047)*0,110<0 |
|
|
[x5 ;x6 ] =[2,95;3,1] |
|
|
интервал изоляции |
|
|
корня |
x7= x6+h=3,1+0,15=3,25 |
x72 – 5* x7+6=3,252 -5*3,25+6= 0,313 |
f(x6)*f(x7)= |
|
|
(0,110)*(0,313)>0 |
|
|
|
x8= x7+h=3,25+0,15=3,4 |
x82 – 5* x8+6=3,42 -5*3,4+6= 0,560 |
f(x7)*f(x8) |
|
|
(0,313)*(0,560)>0 |
|
|
|
Вывод: в точке х5=2,95 значение функции f(x5)<0, в точке х6=3,1 значение функции f(x6)>0, то есть функция меняет знак на отрезке [2,95; 3,1]. Следовательно, найден интервал изоляции корня, содержащий корень.
Реализация в программе MSExcel
3
Результат реализации в программе MSExcel
Реализация в программе Mcad
2. Метод половинного деления
Постановка задачи: Для данного нелинейного уравнения x2-5 x+6=0 с одной неизвестной величиной на интервале изоляции корня [2,95;3,1] найти приближенный корень с точностью 0,01.
Ручной счет: Обозначим левую границу интервала изоляции a=2,950, а правую b=3,100. Делим интервал изоляции корня пополам, т.е. находим среднюю точку хс
xc |
a b |
|
2 |
||
|
2,950 3,100 2
3,025
.
Вычислим значение функции в точке xc. f(xc)=xc2-5*xc+6=3,0252-5*3,025+6=0,026
Проверяем |f(xc)|<0,01 |0,026|<0,01 нет, это значит что значение x= 3,025 нельзя считать приближенным корнем нашего уравнения с точностью 0,01.
Поэтому необходимо выбрать одну из половин интервала [2,950;3,025] и [3,025;3,100] для дальнейшего расчета.
f(a)=f(2,950)= - 0,047 f(xc)=f(3,025)=0,026 f(b)=f(3,100)=0,110
Для выбора одной из половин интервала проверяем условие f(a)*f(xc)<0 (-0,047)*0,026<0 да,
Произведение отрицательно, следовательно, на левом половине интервала есть корень.
Делаем следующий шаг. Теперь a=2,950 b=3,025
На интервале [2,950;3,025] находим среднюю точку хс
xc |
a b |
|
2 |
||
|
2,950 3,025 2
2,988
.
Вычислим значение функции в точке xc. f(xc)=xc2-5*xc+6=2,9882-5*2,988+6=-0,012
Проверяем |f(xc)|<0,01 |-0,012|<0,01 нет, это значит что значение x= 2,988 нельзя считать приближенным корнем нашего уравнения с точностью 0,01.
Поэтому необходимо выбрать одну из половин интервала [2,950;2,988] и [2,988;3,025] для дальнейшего расчета.
f(a)=f(2,950)= - 0,047 f(xc)=f(2,988)= - 0,012 f(b)=f(3,025)=0,026
Для выбора одной из половин интервала проверяем условие f(a)*f(xc)<0 (-0,047)*(-0,012)<0 нет,
Произведение положительно, следовательно, на левом половине интервала нет корня, он на правой половине.
Делаем следующий шаг. Теперь a=2,988 b=3,025
На интервале [2,988;3,025] находим среднюю точку хс
xc |
a b |
|
2,988 3,025 |
3,006 . |
|
|
|
|
|||
2 |
|
2 |
|
|
Вычислим значение функции в точке xc. f(xc)=xc2-5*xc+6=3,0062-5*3,006+6=0,006
Проверяем |f(xc)|<0,01 |0,006|<0,01 да, это значит что значение x= 3,006 можно считать приближенным корнем нашего уравнения с точностью 0,01.
Вывод: x= 3,006 можно считать приближенным корнем нашего уравнения с точностью 0,01, т.к. |f(3,006)|<0,01 |0,006|<0,01
5
Реализация в программе MSExcel
Результат реализации в программе MSExcel
Реализация в программе Mcad
3. Метод Ньютона
Постановка задачи: Для данного нелинейного уравнения x2-5 x+6=0 с одной неизвестной величиной на интервале изоляции корня [2,95;3,1] найти приближенный корень с точностью 0,0001.
Ручной счет.
Проверим какой из концов интервала изоляции корня [2,95;3,1] (найденный шаговым методом) выбрать в качестве начального приближения к корню. Обозначим a=2,950 b=3,100 Необходимо проверить следующие условия:
f’(a)≠0 и f(a)*f''(a)>0 f’(b)≠0 и f(b)*f''(b)>0
f’(x)=2*x-5 1-я производная f”(x)=2 2-я производная
Проверяем f’(a)=2*a-5=2*2,95000-5=0,90000 f(a)*f’’(a)=(a2-5*a+6)*2=(2,950002-5*2,95000+6)*2=-0,09500<0
Т.к. одно из условий не выполнилось, значение а нельзя брать в качестве начального приближения x0.
Проверяем f’(b)=2*b-5=2*3,10000-5=1,20000 f(b)*f’’(b)=(b2-5*b+6)*2=(3,100002-5*3,10000+6)*2=0,22000>0
Оба условия выполнились - значение b можно брать в качестве начального приближения x0.
За начальное приближение выбираем x0=3,10000.
Итерационная формула метода Ньютона xi 1 xi f(xi ) . f'(xi )
Вычислим первое приближение к корню i=0
x |
1 |
|
x |
0 |
|
|
|
f(x |
0 |
) |
||
|
|
|
||
f'(x |
0 |
) |
||
|
|
|
:
f(x0)= x02-5* x0+6=3,100002-5*3,10000-6=0,11000 f’(x0)=2*3,10000-5=1,20000
x1 |
x 0 |
|
f(x |
0 ) |
3,10000 |
|
|
0,11000 |
3,00833 |
||
f'(x |
0 ) |
1,20000 |
|||||||||
|
|
|
|
|
|
Находим значение функции f(x1)
f(x1)= )= x12-5* x1+6=3,008332-5*3,00833-6=0,00840
Проверяем
f(x |
) |
1 |
|
0,00840 0,0001
нет, следовательно, корень не найден на первой итерации.
Делаем следующий шаг.
Вычислим второе приближение к корню i=1
x |
2 |
|
x |
f(x |
) |
|
1 |
|
|
|
|
|
|
|
1 |
f'(x |
|
) |
|
|
||
|
1 |
|
:
f(x1)= x12-5* x1+6=3,008332-5*3,00833-6=0,00840 f’(x1)=2*3,00833-5=1,01667
x 2 x1 |
f(x1 ) |
3,00833 |
|
0,00008 |
3,00008 |
|
f'(x1 ) |
1,01667 |
|
||||
|
|
|
|
|
Находим значение функции f(x1)
f(x2)= )= x22-5* x2+6=3,000082-5*3,00008-6=0,00007
Проверяем
f(x2 ) 0,00007 0,0001 да, следовательно, х= 3,00008 корень уравнения с точностью
0,0001найден на второй итерации.
Вывод: x= 3,00008 можно считать приближенным корнем нашего уравнения с точностью 0,0001, т.к. |f(3,00008)|<0,0001 |0,00007|<0,0001
7
Реализация в программе MSExcel
Реализация в программе Mcad
4. Метод простой итерации
Постановка задачи: Для данного нелинейного уравнения x2-5 x+6=0 с одной неизвестной величиной на интервале изоляции корня [2,95;3,1] найти приближенный корень с точностью 0,01.
Ручной счет.
1 способ
Заданное уравнение x2-5 x+6=0 (f(x) = 0) преобразуем в приведенное. x=x-koef*f(x).
На полученном шаговым методом интервале изоляции корня [2,95;3,1] найдем значение koef.
Сравним первые производные функции на концах интервала изоляции.
|f’(2,95)| > |f’(3,1)|, т.к. |0,90| < |1,20|, то
koef = 1/1,20=0,8333 ( берем значение производной без модуля).
Следовательно, x0 = 3,1.
Запишем итерационную формулу xi+1=xi-koef*f(xi) или xi+1=fi(xi) Вычисляем первое приближение к корню
x1= x0-koef*f(x0)
x1=x0-koef*((x0)2-5*x0+6)= 3,1-0,8333(3,12-5*3,1+6)= 3,0083
Вычислим значение функции при x1=3,0083 f(x1)= x12-5 x1+6=3,0083-5*3,0083+6=0,0084 Проверяем |f(x1)|<eps |0,0084|<0,001 нет,
точность не достигнута, следовательно, вычисляем следующее приближение к корню.
Вычисляем второе приближение к корню x2= x1-koef*f(x1)
x2=x1-koef*((x1)2-5*x1+6)= 3,0083-0,8333(3,00832-5*3,0083+6)= 3,0013
Вычислим значение функции при x2=3,0013 f(x2)= x22-5 x2+6=3,0013-5*3,0013+6=0,0013 Проверяем |f(x2)|<eps |0,0013|<0,001 нет,
точность не достигнута, следовательно, вычисляем следующее приближение точность не достигнута, следовательно, вычисляем следующее приближение к корню.
Вычисляем третье приближение к корню. x3= x2-koef*f(x2)
x3=x2-koef*((x2)2-5*x2+6)= 3,0013-0,8333(3,00132-5*3,0013+6)= 3,0002
Вычислим значение функции при x3=3,0002 f(x3)= x32-5 x3+6=3,0002-5*3,0002+6=0,0002 Проверяем |f(x1)|<eps |0,0002|<0,001 да,
точность достигнута.
Вывод: x= 3,0002 можно считать приближенным корнем нашего уравнения с точностью 0,001, т.к. |f(3,0002)|<0,001 |0,0002|<0,001
Реализация в программе MSExcel(1 способ)
9
Реализация в программе Mcad (1 способ)
2 способ
Заданное уравнение x2-5 x+6=0 (f(x) = 0) преобразуем в приведенное, в котором