Помогите, пожалуйста, разобраться и составить верный алгоритм. В задаче требовалось написать программу на Паскале и сравнить её с приведенной в учебнике. “Подсчитайте кол-во операций в приведенном алгоритме (Ответ приведите в виде функции от параметра n).” Подсчитать кол-во операций самому – это возможно, а как привести ответ в виде функции от параметра n – я не знаю. Помогите, пожалуйста, понять это задание. Заранее благодарен!

Вопрос пользователя:

Помогите, пожалуйста, разобраться и составить верный алгоритм. В задаче требовалось написать программу на Паскале и сравнить её с приведенной в учебнике. “Подсчитайте кол-во операций в приведенном алгоритме (Ответ приведите в виде функции от параметра n).” Подсчитать кол-во операций самому – это возможно, а как привести ответ в виде функции от параметра n – я не знаю. Помогите, пожалуйста, понять это задание. Заранее благодарен!

Илюха отвечает:

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

Например, если программа выполняет ограниченное количество действий – вне зависимости от n она будет считаться конечное время. А если есть какие-нибудь циклы – время выполнения программы будет расти в зависимости от параметра.

 

пример 1: программа вычисления площади квадрата по его стороне.

два действия – перемножить два числа и вывести результат. F(n) = 2;

 

пример 2: программа вычисления факториала:

присваиваем результату 1

сравниваем n<2.

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

иначе результат := результат * n

    n:=n-1

и снова на сравнение

 

здесь F(n) = 1{начальное присвоение} + 3(n-1){сравнение и присвоения в цикле, который выполняется n-1 раза} + 1 {вывод результата} = 3n – 1

т.е время работы программы линейно возрастает при увеличении n

Добавить свой ответ