Учебная работа. Курсовая работа: Решение прикладных задач численными методами

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Контрольные рефераты

Учебная работа. Курсовая работа: Решение прикладных задач численными методами

Кафедра №83

информатики и вычислительной арифметики

Дисциплина: «ИНФОРМАТИКА»

КУРСОВАЯ РАБОТА

Тема:
«Решение прикладных задач численными способами»

Москва 2009 г.

ЦЕЛЬ работы:

Получение практических способностей по применению численных способов при решении прикладных задач на ЭВМ общего предназначения, с внедрением программ сложных повторяющихся алгоритмов, включая редактирование программ в ЭВМ , отладку программ, выполнение расчетов на периферийные устройства.

время: 12 часов.

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

Работа состоит из 2-х частей.

Цель первой части курсовой работы: получить практические способности в использовании численных способов решения не линейных уравнений применяемых в прикладных задачках.

Для выполнения 1 части работы нужно:

· Составить программку и высчитать значения функции в левой части нелинейного уравнения для решения задачки отделения корней;

· Составить логическую схему метода, таблицу идентификаторов и программку нахождения корня уравнения способом дихотомии и способом, обозначенным в таблице;

· Ввести программку в комп, отладить, решить задачку с точностью ε=0,0001
и вывести итог;

· Предугадать в программке вывод на экран монитора микропроцессора получения корня.

Задание на выполнение первой части курсовой работы:

Вариант №21.

Уравнение: 0,25
x
3

+
x
-1,2502=0:

Отрезок, содержащий корень:
[0;2].

I.
Математическое описание численных способов решения

способ деления отрезка напополам (способ дихотомии).

Этот способ дозволяет найти корень уравнения с хоть какой наперёд данной точностью εε . разыскиваемый корень
уравнения уже разделен, т.е.указан отрезок
непрерывности функции



таковой, что на концах этого отрезка функция f(x) воспринимает разные значения:








Сначала находится середина отрезка [ a, b ]:

и рассчитывается с,
т.е. находится







то мы буквально отыскали корень уравнения. Если же



,то символ данной величины сравнивается со знаками функции





в концах отрезка [ a, b ]. Из 2-ух отрезков [ a, с], [ с, b ] для предстоящего рассмотрения оставляется тот, в концах которого функция имеет различные знаки. С оставленным отрезком поступаем аналогичным образом. расчет прекращается, когда оставленный отрезок будет иметь длину меньше 2ε. В этом случае принимаем за приближенное значение корня середину оставленного отрезка и требуемая точность будет достигнута.

II.
График функции.

Для выделения корней рассчитаем значения функции на данном отрезке [0,2] с шагом 0,0001 и по приобретенным данным построим график функции.

Как видно из рисунка график пересекает ось Х один раз, как следует, на данном отрезке [ 0, 2] наше уравнение имеет один корень.

Методы нахождения корней уравнения

I
.
C
труктурная схема метода: способ дихотомии









f(a0
), f(b0
)












да










an+1
=an
; bn+1
=c





an+1
= c ; bn+1
= bn















X


=

a

n

+b

n

2
















Листинг программки имеет вид

#include<stdio.h>

#include<math.h>

double f(double x)

{

return 0.25*(pow(x,3))+x-1.2502;

}

int main(void)

{

int n=0;

double x,a=0.,b=2.,eps=0.0001;

while (fabs(a-b)>2*eps)

{

x=(a+b)/2,

n++;

printf(«step=%3i x=%11.8lf f(x)=%11.8lfn»,n,x,f(x));

if (f(x)==0)

{

printf(«Tothnii koreni x=%lfnkolithestvo iteratsii n=%in»,x,n);

return 0;

}

else if (f(a)*f(x)<0) b=x;

else a=x;

}

printf(«Reshenie x=%11.8lf pri Eps=%lfnkolithestvo iteratsii n=%in»,x,eps,n);

return 0;

}

способ хорд:

1.
Этот способ состоит в том, что к графику функции проводится хорда. Находим точку пересечения с осью OX и опускаем из данной точки прямую параллельную OY. Из точки пе-ресечения прямой и графика проводим хорду и операция повторяется до того времени, пока точка пересечения хорды с осью OX не приблизиться к корню функции до данной погрешности.

Шаг 1-ый:

Нас интересует точка пересечения с осью ОХ.

Создадим допущение: х=x1

y=0

Введем обозначение

x0

f()=f(x0
)

Подставим в уравнение

Отсюда

x1=x0

Шаг 2-ой:

x2=x1-

Для

n

-го шага:

xn
=xn
-1

Условием нахождения корня является:

2. Нелинейное уравнение и условие его решения: 0,25
x
3

+
x
-1,2502=0:

3.
График функции:

4. Схема метода:



















5. Таблица идетификаторов:


Обозначение
Идентификатор
Тип

n
n
int


a
double


b
double


eps
double

x
x
double

f(x)
f(x)
double


6. Листинг программки:

#include<stdio.h>

#include<math.h>

double f(double x)

{

return 0.25*(pow(x,3))+x-1.2502;

}

int main(void)

{

FILE*jad;

jad=fopen(«D:text.txt