#!/usr/bin/env ruby def helloWorld puts "Hello, World!" end helloWorld puts "====> Определение метода с параметром" def saySomething(text = 'Hello, World!') puts text end saySomething saySomething() saySomething "Пробел между именем метода и аргументами" saySomething(" или использование скобок") puts "====> Параметры метода - локальные переменные" def printOneMoreThan(x) x += 1 puts "Во время выполнения: #{x}" end x = 1 puts "До: #{x}" printOneMoreThan(x) puts "После: #{x}" puts "====> Применение значений по умолчанию" def options(a=99, b=a+1) [a, b] end p options # [99, 100] p options(1) # [1, 2] p options(2, 4) # [2, 4] puts "====> Массивы в качестве параметров" def varargs(a, *b) [a, b] end p varargs(1) # [1, []] p varargs(1, 2) # [1, [2]] p varargs(1, 2, 3) # [1, [2, 3]] def mixed(a, b=99, *c) [a, b, c] end puts p mixed(1) # [1, 99, []] p mixed(1, 2) # [1, 2, []] p mixed(1, 2, 3) # [1, 2, [3]] p mixed(1, 2, 3, 4) # [1, 2, [3, 4]] puts "====> Возвращаемые значения" def countUp(x = 0) puts "В этот момент X равно #{x}" x += 1 end x = countUp() x = countUp(x) x = countUp(x) =begin def numbersWord puts "Введите фразу:" a=gets.chop! b=a.split puts "Число слов в этой фразе равно #{b.size}." end numbersWord =end