Python Урок 3. Функции и процедуры

На уроке объясняется синтаксис составления процедуры и функции Питон. Рассматривается вызов функции, параметры функции и процедуры

Процедуры

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

  • Рассмотрим синтаксис процедуры на примере:
    Пример: Создать процедуру для вывода сообщения об ошибке. Запрашивать у пользователя ввести положительное число, в случае ввода отрицательного числа, вызывать процедуру для вывода сообщения об ошибке.

    ✍ Решение:
     

    def Err():  # определение процедуры
      print ( "Ошибка: неверные данные" ) 
    n = int ( input('введите положительное число') ) 
    if n < 0: 
      Err() # вызов процедуры

    • Процедура — вспомогательный алгоритм, выполняющий некоторые действия.
    • Это поименованный фрагмент программы, который можно вызвать.
    • Процедура должна быть определена к моменту её вызова. Определение процедуры начинается со служебного слова def.
    • Вызов процедуры осуществляется по ее имени, за которым следуют круглые скобки, например, Err().
    • В одной программе может быть сколько угодно много вызовов одной и той же процедуры.
    • Использование процедур сокращает код и повышает удобочитаемость.

    Процедура с параметрами

    Как используются в Python параметры процедуры, рассмотрим на примере.

    Пример: Написать процедуру, которая печатает 60 раз указанный символ (введенный с клавиатуры), каждый с новой строки.

    ✍ Решение:
     

    1
    2
    3
    4
    5
    
    def printChar(s):
       for i in range(60):
          print (s) 
    sim = input('введите символ')
    printChar(sim)

    • Глобальная переменная — если ей присвоено значение в основной программе (вне процедуры).
    • Локальная переменная (внутренняя) известна только на уровне процедуры, обратиться к ней из основной программы и из других процедур нельзя.
    • Параметры процедуры — локальные переменные. В программе s — локальная переменная.


    Задание Python 3_0:
    Создать процедуру, которая вычисляет разность двух вводимых пользователем числа. Выполнить задание двумя способами: 1) процедура без параметров: числа — глобальные переменные, определенные в основной программе; 2) процедура с параметрами: числа — параметры процедуры.

    Локальные и глобальные переменные

    Примеры использования локальных и глобальных переменных:

    1
    2
    3
    4
    
    x = 3 # глобальная переменная
    def pr(): # процедура без параметров
      print (x) # вывод значения глобальной переменной
    pr()
    1
    2
    3
    4
    5
    
    x = 3  # глобальная переменная
    def pr(a): # процедура с параметром
      a = 4 # локальная переменная
      print (a) # 4
    pr(x) # передача параметра глобальной переменной (3)
  • Существует возможность изменить значение глобальной переменной (не создавая локальную). В процедуре с помощью слова global:
  • 1
    2
    3
    4
    5
    6
    
    x = 3 # глобальная переменная
    def pr(): # процедура без параметров
      global x
      x = 1
      print (x) # вывод измененного значения глобальной переменной (1)
    pr(x)

    Задание Python 3_1:
    Напишите процедуру, которая выводит на экран в столбик все цифры переданного ей числа, начиная с последней:

    число: 4673
    результат:
    3
    7
    6
    4
    


    Задание Python 3_2:
    Напишите процедуру, которая выводит на экран все делители переданного ей числа (в одну строчку).

    Задание Python 3_3:
    Составить программу с процедурой для вычисления степени числа (входные параметры: число и степень).

    Задание Python 3_4:
    Напишите процедуру, которая принимает параметр – натуральное число N – и выводит первые N чисел Фибоначчи.

    Язык Python функции

    Часть функций языка Python являются встроенными функциями, которые обеспечены синтаксисом самого языка. Например, int, input, randint.
    Рассмотрим пример создания пользовательских функций.

    Пример:
    Вычислить сумму цифр числа.

    1
    2
    3
    4
    5
    6
    7
    8
    
    def sumD(n): # определение функции с параметром
      sum = 0 
      while n!= 0: 
         sum += n % 10 
         n = n // 10 
      return sum # возврат значения функции
    # основная программа 
    print (sumD(1075)) # вызов функции с параметром

    • Функция — это поименованный фрагмент программы, который можно вызвать.
    • Как и процедура, функция должна быть определена к моменту её вызова (служебное слово def).
    • Функция в отличии от процедуры возвращает значение.
    • Для возврата значения функции используется оператор return.
    • Вызов функции осуществляется по ее имени и обычно сопровождается выводом значения.


    Задание Python 3_5:
    Напишите функцию, которая вычисляет количество цифр числа.

    Задание Python 3_6:
    Напишите функцию, которая вычисляет факториал натурального числа N.

    Поделитесь уроком с коллегами и друзьями:

    Добавить комментарий

    Ваш e-mail не будет опубликован. Обязательные поля помечены *

    *
    *


    Вставить формулу как
    Блок
    Строка
    Дополнительные настройки
    Цвет формулы
    Цвет текста
    #333333
    Используйте LaTeX для набора формулы
    Предпросмотр
    \({}\)
    Формула не набрана
    Вставить