Понимание функций
Часть раздела Основы путешествия по GO на Coddy — урок 51 из 109.
Функции — это переиспользуемые блоки кода, которые выполняют определенные задачи. Они помогают организовать код и избежать повторения.
Давайте создадим простую функцию, которая складывает два числа:
func add(x int, y int) int {
return x + y
}
func main() {
result := add(5, 3)
fmt.Println("5 + 3 =", result)
}После выполнения этого кода на экране отобразится число 8 как результат сложения 5 и 3:
5 + 3 = 8Давайте разберем, как определить функцию:
Сначала мы объявляем функцию с именем и параметрами:
func add(x int, y int) int {Это создает функцию с именем add, которая принимает два целочисленных параметра и возвращает целочисленное значение.
Далее, давайте напишем тело функции, которое выполняет вычисление:
return x + yЭта простая строка складывает два параметра вместе и возвращает результат в то место, где была вызвана функция.
Теперь давайте посмотрим, как вызвать нашу функцию и использовать результат:
result := add(5, 3)Эта строка вызывает нашу функцию add со значениями 5 и 3 и сохраняет возвращаемое значение (8) в новую переменную под названием result.
Наконец, выведем результат пользователю:
fmt.Println("5 + 3 =", result)Это выводит текст "5 + 3 =", за которым следует значение, хранящееся в result, которое равно 8.
Задание
НовичокВ этом испытании вы попрактикуетесь в создании и использовании простой функции на Go.
Ваша задача — дописать функцию greet, которая принимает имя в качестве параметра и возвращает приветственное сообщение.
Функция должна возвращать строку в формате: "Hello, " + name + "!"
Функция должна возвращать строку в формате: "Hello, Gopher!"
Шпаргалка
Функции — это многократно используемые блоки кода, которые выполняют определенные задачи. Они помогают организовать код и избежать повторения.
Синтаксис функции:
func functionName(parameter type) returnType {
// тело функции
return value
}Пример функции, которая складывает два числа:
func add(x int, y int) int {
return x + y
}Вызов функции и сохранение результата:
result := add(5, 3)
fmt.Println("5 + 3 =", result) // Вывод: 5 + 3 = 8Попробуйте сами
package main
import "fmt"
// TODO: Допишите функцию greet, которая принимает параметр name
// и возвращает строку приветствия в формате: "Hello, " + name + "!"
// Пример: если name равно "Gopher", верните "Hello, Gopher!"
func greet(name string) string {
// Ваш код здесь
}
func main() {
// Протестируйте функцию с заранее заданным именем
name := "Gopher"
message := greet(name)
fmt.Println(message)
// Ожидаемый результат: Hello, Gopher!
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы сравнения и логические операторы
Операторы сравнения — Часть 1Операторы сравнения — Часть 2Логический оператор ANDЛогический оператор ORЛогический оператор NOTОсновы приоритета операторовИтоги: выполнение сравнений7Управляющие конструкции: Циклы
Что такое цикл `for`Цикл `for` — основыЦикл `for` — только условиеКлючевое слово `break`Ключевое слово `continue`Вложенные циклыИтоги — повторение действий2Переменные и базовые типы данных
Что такое переменнаяВывод типов с помощью `:=`Целые числа (int)Числа с плавающей точкойЛогический тип (Booleans)СтрокиНулевые значения (Zero Values)КонстантыПравила именованияИтоги: переменные и типы5Основы ввода-вывода
Форматированный выводСпецификаторы форматаВывод типовБазовый ввод данных пользователемИтоги: ввод и вывод8Функции
Понимание функцийОбъявление функцииВызов функцийПараметры функцииВозврат одного значенияВозврат нескольких значенийИменованные возвращаемые значенияОсновы области видимости функцийИтоги — создание переиспользуемого кода3Базовые операторы
Арифметические операторыОператор деленияОператор остатка от деленияОператор присваиванияКомбинированные операторы присваиванияИнкремент и декрементПовторение — Вычисления6Управление потоком: Условные конструкции
Оператор `if`Ключевое слово `else`Ключевое слово `else if`Затенение переменных в `if`Инициализация переменныхОператор `switch`Switch с выражениямиSwitch без выраженийКлючевое слово `fallthrough`Итоги — Принятие решений