Что такое функция в программировании?

Часто ли вы копируете и вставляете свой код для повторного использования в различных разделах программы?

Если да, вы можете захотеть рассмотрите возможность использования функций. Функции — очень мощная возможность языков программирования. Они могут сделать код более эффективным, легким для чтения и элегантным.

Что такое функция?

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

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

Как написать функцию?

Есть много разных способов написания функций. Точный синтаксис будет зависеть от языка, на котором вы программируете. Мы покажем примеры на Python, JavaScript и C ++, чтобы продемонстрировать диапазон синтаксиса программирования.

По теме: Почему языки программирования не могут существовать без функций

Пустые функции

Первый тип функций, который мы рассмотрим это пустая функция. Это просто означает, что функция не возвращает значение. Функции аннулирования используются для выполнения набора инструкций. В этих примерах написанная нами функция называется helloFunction . Назначение функции — вывести «Hello World».

СОВЕТ: дайте функциям имена, объясняющие, что они делают. По мере усложнения программы будет легче управлять функциями и читать код.

Python

  def helloFunction (): 
print ("Hello World")
helloFunction()

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

Ваши зоркие глаза могли заметить, что print () также является функцией, но она вызывается иначе, чем наша функция. Придерживайтесь этой мысли прямо сейчас, мы рассмотрим функции и параметры позже.

JavaScript

  function helloFunction () {
alert ("Hello World!" );
}
helloFunction ();

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

Пробелы не важны в JavaScript, но обычно код в функции имеет отступ. Отступы упрощают чтение кода, что очень важно по мере того, как ваши программы становятся более сложными.

Примечание. Подобно print () в предыдущем примере, alert () также является функцией.

C ++

  #include  
using namespace std;
void helloFunction () {
cout }
int main () {
helloFunction ();
return 0;
}

В C ++ функции создаются по-другому. Вместо ключевого слова для определения функции первое слово описывает тип данных, которые функция вернет. В этом случае наша функция не возвращает никаких данных, поэтому данные недействительны. Далее у нас есть имя функции. Как и в JavaScript, весь код в фигурных скобках запускается при вызове функции. Также, как и в JavaScript, пробелы не влияют на функцию, но это хорошая практика.

Вы заметили другую функцию в коде C ++? Да, main () — это функция. Когда вы выполняете программу на C ++, вы автоматически вызываете основную функцию. Когда функция main успешно завершена, она возвращает 0 при выходе из программы, чтобы сигнализировать об отсутствии ошибок при запуске программы.

Функции, требующие значений

Функции Void отлично подходят, если вы обнаружите, что пишете один и тот же фрагмент кода снова и снова. Но они могут быть ограничивающими. Они статичны и не меняются. Они всегда выполняют одни и те же инструкции. Один из способов повысить их полезность — передать функции разные значения.

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

Python

  def helloFunction (newPhrase): 
print (newPhrase)
helloFunction ("Наша новая фраза")

Теперь, в скобках, наша функция заявляет, что для запуска ему нужна переменная. Мы назвали переменную newPhrase и теперь можем использовать ее в нашей функции. Когда мы вызываем функцию, нам нужно передать запрошенную информацию, поместив ее в скобки. Такие же изменения были внесены в JavaScript.

JavaScript

  function helloFunction (newPhrase) {
alert (newPhrase);
}
helloFunction ("Наша новая фраза");

C ++

  #include  
using namespace std;
void helloFunction (string newPhrase) {
cout }
int main () {
helloFunction ("Наша новая фраза");
return 0;
}

Наш Функция C ++ потребовала немного больше информации. Мы знаем, что вашей функции нужны строковые данные, но этого недостаточно для C ++. Когда вы создаете свою функцию, вы должны указать, какой тип данных требуется вашей функции. Если вы не отправите данные правильного типа, функция выдаст ошибку.

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

Связано: 5 языков функционального программирования, которые вы должны знать

Функции, возвращающие значение

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

Python

  def addFunction (a, b): 
return a + b
print (addFunction (2, 4))

В этом примере наш функция требует двух переменных вместо одной. Мы указываем это, разделяя имена переменных запятой. Ключевое слово return указывает функции вернуть следующие данные, в данном случае 2 + 4 или 6. Мы вызываем функцию внутри print () функция.

Как только наша программа дойдет до этой строки, она остановится, запустит нашу функцию, а затем продолжит, как если бы addFunction (2, 4) на самом деле был просто возвращаемое значение 6.

JavaScript

Код JavaScript очень похож на код Python. Основное отличие состоит в том, что функция вызывается в предупреждении..

  function addedFunction (a, b) {
return a + b;
}
alert (addFunction (2, 4 ));

C ++

  #include  
using namespace std;
int addFunction (int a, int b) {
return a + b;
}
int main () {
cout return 0;
}

Код C ++ работает аналогично, но, как обычно, требует немного больше информации. Во-первых, мы должны сказать, какой тип данных вернет наша функция. Вы увидите, что void был изменен на int . Это означает, что вместо того, чтобы возвращать данные, наша функция вернет целое число. В остальном код похож на тот, который мы уже исследовали.

Управляйте своими функциями

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

Как уже упоминалось, каждый раз, когда функция вызывается, программа приостанавливается на время ее выполнения. Это означает, что программа хранится в активной памяти. Если вы вызываете еще несколько функций, не завершая их, вы используете больше активной памяти. Если вы не будете осторожны, ваша программа может выйти из-под контроля.

Оцените статью
oilgasindustry.ru
Добавить комментарий