Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Po_distsipline_programmirovanie.doc
Скачиваний:
24
Добавлен:
07.02.2015
Размер:
140.29 Кб
Скачать

3. Программирование алгоритмов циклической структуры с заданным числом повторений

Алгоритм называется циклическим, если он содержит многократное выполнение одних и тех же операторов при различных значениях промежуточных данных. Число повторений этих операторов может быть задано в явной (цикл с известным заранее числом повторений) или неявной (цикл с неизвестным заранее числом повторений) форме.

Перед выполнением работы необходимо изучить различные схемы организации циклов и операторы FOR, WHILE, REPEAT.

Пример на паскале:

PROGRAM Primer_1;

var i,k,s,p,n: Integer;

BEGIN

Write('Введите M '); Readln(m);

For i:=1 to M do

begin

s:=0; k:=i; n:=0;

While k<>0 do

begin k:=k DIV 10; n:=n+1 end;

k:=i;

While k<>0 do

begin p:=k MOD 10; k:=k DIV 10;

If p<>0 then s:=Trunc (s+Exp(n*Ln(p)))

end;

If s=f then WriteLn (f)

end;

END.

4. Программирование алгоритмов итерационной структуры.

Итерационные алгоритмы нашли широкое применение в инженерно-технических расчётах. В этих расчётах производятся многократные последовательные вычисления с целью постепенного приближения к искомому результату, причем для вычислений на каждом шаге используются результаты вычислений на предыдущем шаге. Завершение вычислений производится при достижении заданной точности вычислений. Поскольку количество итераций (повторений вычислений) заранее неизвестно, то при организации вычислений необходимо использовать циклы While или Repeat.

Итерационные алгоритмы применяются, например, в задачах вычисления суммы ряда или величины его членов, при численном решении нелинейных уравнений и т.п.

Пример на Си Шарпе:

int n = 1;

double x = 0.1;

double e = 0.0001;

double m;

double s = 0;

while ((m = Math.Pow(x, n - 1) / Math.Pow(2, n - 1)) >= e) {

s += m;

++n;

}

5. Программирование алгоритмов разветвляющейся структуры

Разветвление в программах возникают при необходимости выбора

одного из нескольких возможных путей в решении задачи, которое может

зависеть от нескольких данных или промежуточных результатов.

Для организации разветвлений в программах используются операторы

условный, перехода и выбора.

Условный оператор позволяет проверить некоторые условия и в

зависимости от результата проверки выполнить то или иное действие.

Условный оператор - это средство ветвления вычислительного процесса.

В программе можно осуществить переход на помеченный оператор

(не зависимо от какого либо условия), прервав последовательное выполнение

программы. Для этого служит простой оператор безусловного перехода.

Условный оператор позволяет при выполнении программы выбирать

одно из двух возможных действий. Если же необходимо сделать много взаимоисключающих проверок, то удобнее воспользоваться оператором

выбора варианта.

Ключ выбора (селектор) представляет собой выражение скалярного

типа (но не вещественного). Выполнение оператора варианта начинается с

вычисления значения ключа выбора. Затем для использования выбирается

оператор, одна из меток которого совпадает с полученным значением. После

выполнения этого оператора (он может быть простым или составным)

управление передаётся на оператор, следующий за оператором варианта.

Если же значение ключа выбора не совпало ни с одной из меток, управление

передаётся оператору, стоящему за словом Else. Часть Else может

отсутствовать.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]