000131. Как делать функции c#- Часть 3

Как делать функции c#? Часть 3||wmysterio|wmysterio|wmysterio@yandex.ru|||Приветствую Вас, дорогие пользователи сайта. Это третья часть по разработке функций на c#. И её я решил посвятить рекурсии. Что это вообще такое? В программировании это понятие называется вызов функции самой из себя в качестве вспомогательной функции. Классическими методами использования рекурсивных методов является вычисление факториала чисел. Я не буду выносить мозг Вам и себе с этими факториалами и приведу более лёгкий метод. Допустим мы подаём в функцию некое число. Нам нужно вычислить квадрат этого числа и вернуть этот результат. Причём нужно это делать таким образом, что бы квадрат нашего числа должен возносится в степень до тех пор, пока входящее число не больше указанного числа. Следовательно наша функция будет принимать 2 параметра:

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

Эти условия мы задали, что бы сделать как бы границу вычисления. Так как рекурсия - это цикличное действие, то условия выхода должны быть. Теперь в дело мы и пустим рекурсию. Так как мы поставили цель задания вычислять квадрат числа, то нужно умножить число на FirstValue и подставить его у вновь вызванную функцию Qad. Теперь наш код будет иметь вид:

Теперь напишем код основной программы и подставим входные данные:

Достаточно сложно объяснить словами сам процесс рекурсии - это нужно понять на практике. Саму рекурсию используют не так часто, но всё же применение всегда находится. Недостатком повторного вызова - нужно слишком вдумчиво продумывать алгоритм выполнения, так как не рекомендуется выполнять длительные и сложные действия в самой функции и не создавать всякого рода переменные в теле функции, так как это влияет на быстродействие программы и на производительности в целом. К тому-же нужно максимально обезопасить программу от зацикливания. Я привёл один из лёгких способов функции это типа. Надеюсь вам было понятно и полезно.|724|1|0|01804118png141`71||kak_delat_funkcii_c_chast_3|1392798688

Last updated