Menu
Coddy logo textTech

Параметры метода

Часть раздела Основы путешествия по Ruby на Coddy — урок 49 из 88.

Методы становятся гораздо мощнее, когда они могут принимать входные данные. Параметры позволяют передавать данные в метод, делая его гибким и пригодным для повторного использования в различных ситуациях.

Чтобы добавить параметры, поместите их в круглые скобки после имени метода:

def greet(name)
  puts "Hello, #{name}!"
end

greet("Alice")  # Выводит: Hello, Alice!
greet("Bob")    # Выводит: Hello, Bob!

Параметр name действует как переменная внутри метода. Когда вы вызываете greet("Alice"), значение "Alice" присваивается name для этого вызова.

Методы могут принимать несколько параметров, разделенных запятыми:

def add(a, b)
  puts a + b
end

add(5, 3)   # Выводит: 8
add(10, 7)  # Выводит: 17

Порядок имеет значение. Первый аргумент передается первому параметру, второй аргумент — второму параметру и так далее. Вы должны предоставить именно то количество аргументов, которое ожидает метод, иначе Ruby выдаст ошибку.

challenge icon

Задание

Легко

Определите метод с именем introduce, который принимает два параметра: name и age. Метод должен выводить сообщение в следующем формате:

My name is [name] and I am [age] years old.

Прочитайте два входных значения:

  1. Строка, представляющая имя
  2. Целое число, представляющее возраст

После определения метода вызовите его с входными значениями.

Например, если входные данные — Alice и 25, вывод должен быть:

My name is Alice and I am 25 years old.

Если входные данные — Bob и 30, вывод должен быть:

My name is Bob and I am 30 years old.

Шпаргалка

Методы могут принимать параметры, что делает их гибкими и переиспользуемыми. Параметры указываются в скобках после имени метода:

def greet(name)
  puts "Hello, #{name}!"
end

greet("Alice")  # Выводит: Hello, Alice!

Параметр ведет себя как переменная внутри метода. При вызове метода значение аргумента присваивается параметру.

Методы могут принимать несколько параметров, разделенных запятыми:

def add(a, b)
  puts a + b
end

add(5, 3)   # Выводит: 8

Порядок аргументов имеет значение — первый аргумент передается первому параметру, второй — второму и так далее. Вы должны передать ровно столько аргументов, сколько ожидает метод.

Попробуйте сами

# Чтение входных данных
name = gets.chomp
age = gets.chomp.to_i

# TODO: Определите метод introduce ниже


# Вызов метода с входными значениями
introduce(name, age)
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы