Функсияҳои фарогир дар Python

Барои кӯтоҳ кардани код, даъват карда шуда, функсияҳоро ба якдигар фарогир кардан мумкин аст.

Бигзор мо функсияҳо барои ба квадрат расонидани рақам, ба куб расонидани рақам ва барои ҷамъ кардани ду адад дошта бошем:

pythondef square(num):
  return num ** 2
  
def cube(num):
  return num ** 3
  
def add(num1, num2):
  return num1 + num2

Барои ба даст овардани ҷамъи квадрат ва куби рақам, мо метавонем онҳоро дар параметри функсияи add вақти даъвати он фарогир кунем:

pythonres = add(square(2), cube(4))
print(res) # 68-ро хориҷ мекунад

Ғайр аз ин, даъват кардани функсияҳо дар бадани функсияи дигар мумкин аст. Биёед намунаи қаблиро навишта ва функсияҳоро дар дохили add даъват кунем:

pythondef add(num1, num2):
  return square(num1) + cube(num2)
  
res = add(2, 4)
print(res) # 68-ро хориҷ мекунад
Задание 1

Функсияеро созед, ки рақамро ба квадрат мебарад ва функсия барои ба даст овардани куби рақам. Инчунин бо истифода аз онҳо функсияеро созед, то ки куби квадрати рақамро дар экран чоп кунад.

Задание 2

Функсияеро созед, ки навъи тағирёбандаро месанчад ва агар тағирёбанда сатр бошад, онро бо ҳарфи калон чоп мекунад. Инчунин функсияеро созед, ки корбарро бо ном салом медиҳад. Якумро ба он ҳамчун фарогир ҷойгир кунед, то ки ном ҳамеша бо ҳарфи калон чоп шавад.