русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Циклический алгоритм


Дата добавления: 2015-06-12; просмотров: 1186; Нарушение авторских прав


 

Пример 3. Составить алгоритм решения задачи извлечения квадратного корня из действительного положительного числа, основанный на построении монотонной последовательности, сходящейся к корню.

Для решения задачи используем рекуррентную формулу, т.е. формулу, позволяющую выразить (n+1)-й член последовательности через значение её предыдущего члена по формуле

,

Условием окончания процесса является выполнение неравенства , где e -характеризует требуемую точность вычислений.

Так как число членов последовательности заранее неизвестно, то в данном примере необходимо использовать цикл с неизвестным числом повторений (см. п.2.6). Блок-схема вычисления квадратного корня из действительного числа представлена на рис. 7.

Программа:

Program Primer3;

Uses Crt;

Var a,e:real;

X:array [1..100] of real;

Begin

Write(‘Введите число, для которого вычисляется корень:’);

Readln(a);

Write(‘Введите значение первого члена последовательности:’);

Readln(X[1]);

Write(‘Введите величину погрешности:’);

Readln(e);

n:=1;

Repeat

X[n+1]:=0.5*(X[n]+a/X[n]);

Z:=abs(X[n+1]-X[n]);

n:=n+1;

Until Z<=e;

Writeln(’Значение корня заданного числа’,X[n+1]:2:3);

Readkey;

End.

 

Пример 4.Составить блок-схему алгоритма численного интегрирования определенного интеграла методом трапеций.

Как известно, вычисление определенного интеграла сводится к вычислению площади криволинейной трапеции, ограниченной функцией f(x), осью абсцисс и прямыми линиями и (рис. 8) по формуле

Приближенное значение этой площади легко вычисляется, если криволинейную трапецию заменить прямолинейной. Точность повышается, если отрезокa, bразбить на несколько участков, для каждого вычислить площади трапеций и просуммировать их. В конечном итоге получим

 
 

,



где n – число участков разбиения (чем больше n, тем точнее результат).

Рисунок 8 – Вычисление площади фигуры, ограниченной линиями

для нахождения определенного интеграла

 

 
 

Так как число участков n задаем мы сами, то число вычислений, и, следовательно, повторений, известно. Поэтому для решения данной задачи используем цикл с известным числом повторений. Блок-схема представлена на рис. 9.

Рисунок 9 – Блок-схема с использованием цикла

с заданным числом повторений

Дополнительно представим еще два примера решения задач в виде блок-схем на сортировку одномерного массива (рис. 10-а) и поиск максимального элемента матрицы (рис. 10-б).

а) б)

 

Рисунок 10 – Блок-схемы решения задач с массивами:

а – сортировка одномерного массива; б – нахождение максимального элемента матрицы



<== предыдущая лекция | следующая лекция ==>
Разветвляющийся алгоритм | Лабораторная работа №2


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.314 сек.