Полное руководство по основам языка Ruby

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

Назад

Первая программа на Ruby

Каждая программа на Ruby начинается с простого кода:


puts "Hello, World!"
        

Типы данных

Основные типы данных в Ruby:

Арифметические операции

Пример использования арифметических операций в Ruby:


a = 10
b = 20
sum = a + b
diff = b - a
prod = a * b
div = b / a
mod = b % a

puts "Sum: #{sum}"
puts "Difference: #{diff}"
puts "Product: #{prod}"
puts "Division: #{div}"
puts "Modulus: #{mod}"
        

Ввод/Вывод

Ввод и вывод данных с использованием gets и puts:


print "Enter an integer: "
num = gets.to_i
puts "You entered: #{num}"
        

Условные операторы

Пример использования оператора if-else:


print "Enter an integer: "
num = gets.to_i

if num > 0
  puts "The number is positive."
elsif num < 0
  puts "The number is negative."
else
  puts "The number is zero."
end
        

Циклы

Пример цикла while:


i = 0
while i < 5
  puts "i = #{i}"
  i += 1
end
        

Массивы

Пример работы с массивами в Ruby:


arr = [1, 2, 3, 4, 5]
arr.each_with_index do |item, i|
  puts "arr[#{i}] = #{item}"
end
        

Функции

Пример создания и использования функции:


def greet
  puts "Hello from the function!"
end

greet
        

Классы и объекты

Пример создания и использования классов:


class Rectangle
  def initialize(width, height)
    @width = width
    @height = height
  end

  def area
    @width * @height
  end

  def display
    puts "Width: #{@width}, Height: #{@height}, Area: #{area}"
  end
end

rect = Rectangle.new(5.0, 3.0)
rect.display
        

Наследование

Пример использования наследования в Ruby:


class Animal
  def speak
    puts "Animal makes a sound."
  end
end

class Dog < Animal
  def speak
    puts "Dog barks."
  end
end

animal = Dog.new
animal.speak
        

Работа с указателями

В Ruby указатели не используются напрямую, но можно работать с объектами:


num = 10
ptr = num

puts "Value of num: #{num}"
puts "Value via reference: #{ptr}"

num = 20
puts "New value of num: #{num}"
        

Динамическое выделение памяти

В Ruby управление памятью происходит автоматически с помощью сборщика мусора:


# Ruby управляет памятью автоматически
arr = [1, 2, 3, 4, 5]
puts arr
        

Работа с файлами

Пример работы с файлами в Ruby:


# Запись в файл
File.open("example.txt", "w") do |file|
  file.write("Hello, file!\n")
end

# Чтение из файла
File.open("example.txt", "r") do |file|
  content = file.read
  puts content
end