В
Все
У
Українська література
Г
Геометрия
Д
Другие предметы
Э
Экономика
Г
География
О
ОБЖ
М
Математика
М
МХК
Х
Химия
Қ
Қазақ тiлi
Л
Литература
У
Українська мова
О
Обществознание
Ф
Физика
А
Английский язык
А
Алгебра
И
История
Б
Беларуская мова
Б
Биология
М
Музыка
П
Право
И
Информатика
П
Психология
В
Видео-ответы
Н
Немецкий язык
Ф
Французский язык
О
Окружающий мир
Р
Русский язык
34224253
34224253
03.08.2021 23:26 •  Информатика

Автомат получает на вход пятизначное десятичное число. по полученному числу строится новое десятичное число по следующим правилам. 1. вычисляются два числа – сумма первой, третьей и пятой цифр и сумма второй и четвёртой цифр заданного числа. 2. полученные два числа записываются друг за другом в порядке невозрастания (без разделителей). пример. исходное число: 15177. поразрядные суммы: 9, 12. результат: 129. определите, сколько из ниже чисел могут получиться в результате работы автомата. 50 1510 150 1520 2015 1925 1015 215 2519 в ответе запишите только количество чисел

Ответ:
САХАРОчка
САХАРОчка
13.08.2020 23:56
ответ 5

Код на Ruby

t = {}
for i in 10000..99999
    n, a, b, k =i, 0, 0, 0
    while n > 0
        k += 1
        a += n % 10 if k % 2 == 0
        b += n % 10 if k % 2 == 1
        n = n / 10
    end
    s = [a,b].max.to_s + [a,b].min.to_s

    next if  not ["50", "1510", "150", "1520", "2015", "1925", "1015", "215", "2519"].include?(s)
    if t[s] == nil then t.store(s, 1) else t[s] += 1 end
end
p t

вывод
{"50"=>15, "150"=>69, "1510"=>837, "2015"=>144, "215"=>168}
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?