Главная страница

учебное пособие ТА. Учебное пособие по дисциплине Теория алгоритмов предназначено для студентов Политехнического колледжа НовГУ, обучающихся по специальности 230115 Программирование в компьютерных системах


Скачать 0.51 Mb.
НазваниеУчебное пособие по дисциплине Теория алгоритмов предназначено для студентов Политехнического колледжа НовГУ, обучающихся по специальности 230115 Программирование в компьютерных системах
Дата15.10.2018
Размер0.51 Mb.
Формат файлаdocx
Имя файлаучебное пособие ТА.docx
ТипУчебное пособие
#53468
страница4 из 12
1   2   3   4   5   6   7   8   9   ...   12

1.4 ЦИКЛЫ В ВЫЧИСЛИТЕЛЬНЫХ АЛГОРИТМАХ


Определение 4. Циклические алгоритмы – алгоритмы, содержащие фрагменты повторения вычислений.

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

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

В итерационных циклах число повторений неизвестно, выход из цикла осуществляется при выполнении некоторого условия. В случае, когда условие проверяется до начала повторений, циклы называются с предусловием, когда же проверка происходит после очередной итерации, циклы называются с постусловием. Все арифметические циклы – это циклы с предусловием. [2]

Общий вид блок-схем циклических алгоритмов представлен в таблице 2.

Рассмотрим примеры решения задач с помощью циклических алгоритмов. В Приложении 1 представлены программы на языке Pascal, соответствующие данным задачам.

Задача 4.

  1. Составить алгоритм вычисления функции .

  2. . – произведение натуральных чисел 1*2*3…n, . Вычисление значения факториала можно рассматривать как последовательное повторение операции умножения предшествующего значения факториала F на очередное натуральное число.

  3. схема алгоритма вычисления факториала на рис.5.





Начало













Нет

Да

Рис. 5 Алгоритм вычисления функции n!

Задача 5.

  1. Составить алгоритм вычисления выражения

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

  3. схема алгоритма представлена на рис.6.

Задача 6.

  1. Составить алгоритм нахождения наибольшего общего делителя двух целых чисел a и b. [6]

  2. Наибольший общий делитель (НОД) двух целых чисел aи b – это наибольшее целое число, которое делит нацело оба числа. Рассмотрим способ, который называется алгоритмом Евклида. Пусть aиbодновременно не равные нулю целые неотрицательные числа и a b. Если b = 0, то НОД(a, b) =a, а если b 0, то для чисел a,bиr, где r – остаток от деления aна b, выполняется равенство НОД (a, b) = НОД(b, r). Действительно, r:=a Mod b, r:= a –(a Divb) * b. Если какое-то число делит нацело и a, и b, то из приведенного равенства следует, что оно делит нацело и число r.

  3. Блок-схема алгоритма Евклида нахождения НОД и НОК двух целых чисел на рис.7.

  4. Программная реализация алгоритма Евклида (Приложение 1, Evclid.pas).

Задача 7.

  1. Дано натуральное число n. Требуется подсчитать количество цифр данного числа.

  2. Количество цифр в числе n неизвестно, поэтому необходимо использовать цикл с предусловием. Подсчёт количества цифр можно начать с последней цифры числа, далее увеличить изначально нулевой счётчик цифр на единицу. Повторять уменьшение числа в 10 раз, пока оно не станет равным 0.

  3. Блок-схема на рис.8.


Начало





Нет

Да













Рис. 6 Алгоритм вычисления выражения

Вывести

a, b, НОД,

НОК
Начало

Ввести

a, b




Да



Нет

Нет









Конец
Рис.7 Алгоритм Евклида нахождения НОД и НОК двух целых чисел

Начало

Конец

m,n,k

k

K=0

K=k+1

m=m div 10

m<>0
Рис.8 Алгоритм подсчета количества цифр в натуральном числе.

4. Программа для решения задачи 7 (подсчет количества цифр в числе) представлена в Приложении 1, Program7.pas.
1   2   3   4   5   6   7   8   9   ...   12


написать администратору сайта