Опрос: различия между версиями

Материал из Поле цифровой дидактики
Новая страница: «-- Опрос: Нравится ли вам греческий язык? function createPoll() print("========== ОПРОС ==========") print("Вопрос: Нравится ли вам греческий язык?") print("\nВарианты ответов:") print("1 - Да, очень нравится") print("2 - Нравится") print("3 - Нейтрально") print("4 - Не нравится") print("5 - Совсе...»
 
Полностью удалено содержимое страницы
Метка: очистка
 
Строка 1: Строка 1:
-- Опрос: Нравится ли вам греческий язык?


function createPoll()
    print("========== ОПРОС ==========")
    print("Вопрос: Нравится ли вам греческий язык?")
    print("\nВарианты ответов:")
    print("1 - Да, очень нравится")
    print("2 - Нравится")
    print("3 - Нейтрально")
    print("4 - Не нравится")
    print("5 - Совсем не нравится")
    print("============================")
   
    local results = {
        [1] = 0,  -- Да, очень нравится
        [2] = 0,  -- Нравится
        [3] = 0,  -- Нейтрально
        [4] = 0,  -- Не нравится
        [5] = 0  -- Совсем не нравится
    }
   
    local total_votes = 0
   
    while true do
        print("\nВведите номер ответа (1-5) или 0 для выхода:")
        local input = io.read("*number")
       
        if input == 0 then
            break
        elseif input >= 1 and input <= 5 then
            results[input] = results[input] + 1
            total_votes = total_votes + 1
            print("✓ Спасибо за ваш голос!")
        else
            print("✗ Неверный ввод. Пожалуйста, введите число от 1 до 5.")
        end
    end
   
    -- Показ результатов
    print("\n========== РЕЗУЛЬТАТЫ ОПРОСА ==========")
    print("Всего голосов:", total_votes)
    print("----------------------------------------")
   
    if total_votes > 0 then
        local answers = {
            "Да, очень нравится",
            "Нравится",
            "Нейтрально",
            "Не нравится",
            "Совсем не нравится"
        }
       
        for i = 1, 5 do
            local percentage = (results[i] / total_votes) * 100
            print(string.format("%s: %d голосов (%.1f%%)",
                answers[i], results[i], percentage))
           
            -- Визуализация прогресса
            local bar_length = math.floor(percentage / 2)
            local bar = string.rep("█", bar_length)
            print(string.format("  [%-50s] %s", bar, ""))
        end
       
        -- Определение победителя
        local max_votes = 0
        local winning_answer = 0
       
        for i = 1, 5 do
            if results[i] > max_votes then
                max_votes = results[i]
                winning_answer = i
            end
        end
       
        print("\n🏆 Самый популярный ответ:", answers[winning_answer])
    else
        print("Голосов не было получено.")
    end
   
    print("========================================")
end
-- Запуск опроса
createPoll()

Текущая версия от 10:16, 21 мая 2026