СОЗДАНИЕ САЙТОВ

Вот, что я могу предложить...

penguin
folder folder folder

Разработка ПО

Веб-разработка

Системное программирование

Автоматизация процессов

Поддержка и обслуживание

Здравствуйте!
Рад приветствовать вас на своей странице. Меня зовут Александр, и я занимаюсь разработкой сайтов и информационных систем уже более 10 лет. За это время я реализовал десятки проектов разного масштаба — от небольших лендингов до комплексных веб-платформ для бизнеса.

ЕСЛИ У ВАС ЕСТЬ ИДЕЯ, МЕЧТА ИЛИ ЗАДАЧА — ДАВАЙТЕ ВОПЛОТИМ ЕЁ В ЖИЗНЬ!

Я помогу вам:
Создать современный и удобный сайт;
Разработать эффективную информационную систему;
Оптимизировать текущие digital-процессы.
Готовы начать? Напишите мне — обсудим ваш проект и найдём лучшее решение!
gamepad

  class Task
    attr_accessor :description, :completed

    def initialize(description)
      @description = description
      @completed = false
    end

    def mark_complete
      @completed = true
    end

    def to_s
      "[#{@completed ? 'x' : ' '}] #{description}"
    end
  end

  class TodoList
    def initialize
      @tasks = []
    end

    def add_task(description)
      task = Task.new(description)
      @tasks << task
      puts "Задача '#{description}' добавлена."
    end

    def complete_task(index)
      if valid_index?(index)
        @tasks[index].mark_complete
        puts "Задача #{@tasks[index].description} помечена как выполненная."
      else
        puts "Ошибка: неверный индекс задачи."
      end
    end

    def show_tasks
      if @tasks.empty?
        puts "Список задач пуст."
      else
        puts "\nВаши задачи:"
        @tasks.each_with_index do |task, index|
          puts "#{index}. #{task}"
        end
      end
    end

    def menu
      loop do
        puts "\nВыберите действие:"
        puts "1. Показать задачи"
        puts "2. Добавить задачу"
        puts "3. Выполнить задачу"
        puts "4. Выйти"

        choice = gets.chomp

        case choice
        when "1"
          show_tasks
        when "2"
          print "Введите описание задачи: "
          desc = gets.chomp
          add_task(desc)
        when "3"
          print "Введите номер задачи для выполнения: "
          index = gets.chomp.to_i
          complete_task(index)
        when "4"
          puts "Выход из программы."
          break
        else
          puts "Неверный выбор. Попробуйте снова."
        end
      end
    end

    private

    def valid_index?(index)
      index.between?(0, @tasks.size - 1)
    end
  end

  # Запуск программы
  list = TodoList.new
  list.add_task("Купить продукты")
  list.add_task("Почитать книгу")
  list.add_task("Сделать зарядку")

  list.show_tasks
  list.menu