Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Постановка задачи. Введение: Итерационные алгоритмы вычисления приближенного значения функций 3

Содержание

Введение: Итерационные алгоритмы вычисления приближенного значения функций 3

1.Постановка задачи. 3

2.Алгоритм и метод решения задачи. 3
3.Текст программы на алгоритмическом языке C++ 3

4.Блок схема. 4

5.Описание программы.. 6

6.Исходные данные: 6

7.Результаты.. 6

8.Анализ полученных результатов и выводы.. 6

 


 

Введение: Итерационные алгоритмы вычисления приближенного значения функций

 

Постановка задачи


Дана функция:

2.Алгоритм и метод решения задачи:

Выведем зависимость k-го члена ряда через предыдущие. Получить эту зависимость можно путем деления k+1-го члена ряда на k-й. В рассматриваемом примере

.

В результате получаем такую зависимость:

a0 = 1, , k=0, 1, 2, …

В качестве условия выхода следует принять неравенство

где e - заданное достаточно малое положительное число (точность).
1.Ввод исходных данных: значения х, e, допустимое количество итераций kmax.

2. Положить a0=l, s = a0, k = 0.

3. Проверка условия |a0|< e. Повторять пункты 4-8 алгоритма до тех пор, пока данное условие выполняется. Если условие не выполняется, то переход к пункту 7.

4. Проверка условия k< kmax. Если оно выполняется, то переход к пункту 3 алгоритма, если не выполняется, то вывести на печать сообщение " за заданное количество итераций точность не достигнута" и останов.

5. Вычислить k=k+l.

6. Вычислить ak(x): al = -a0*x/k.

7. Вычислить сумму: s = s+al.

8. Вычислить a0 = al.

9. Вывод значения функции.



 


3.Текст программы на алгоритмическом языке C++:


#include< stdio.h>
#include < math.h>
#include < conio.h>
void main()
{
int k, kmax;
double x, a0, a1, s, e;

 

printf(" x="); scanf(" %lg", & x);
printf(" eps="); scanf(" %lg", & e);
printf(" kmax="); scanf(" %d", & kmax);


a0=1; s=a0; k=0;
while(fabs(a0)> e & & (k< kmax)) {
k=k+1;
a1=-a0*x/k;
s=s+a1;
a0=a1;

}

if(k==kmax) printf(" За %d количество итераций точность не достигнута ", k);
else printf(" Число итерации k= %d\n", k);
printf(" Преближное значение pow(e, pow(-x, 2))= %g, %g", s, exp(x));

getch();

}

 

 


4.Блок схема

x, e, kmax
k=kmax
k=0
|a0|> e& k< kmax
Точность не достигнута
s, exp(x)
k=k+1 a1= -a0*x/k
a0=0; s=a0
s=s+a1 a0=a1


 


нет нет



да

 


 


5.Описание программы

Данная программа выполняет функции ввода-вывода, на экран вводятся значения x, kmax, e. Далее программа ищет значения функций e-x^2. Затем выводится полученные значения.

 

6.Исходные данные:

В качестве исходных данных выступали значения коэффициентов:

1) x=1, e=0, 00001, kmax= Число итерации;

2) x=19, e=0, 01, kmax= За 256 итерации точность не достигнута;

3) x=1, e=3, kmax=2;

<== предыдущая лекция | следующая лекция ==>
В чем различие взглядов моргентау и арона | Дорогие участники!




© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.