Переливаем так:
1 (3 л.): 0 0 3 3 0 3 0 3 1 1 0 3 0 3 0
2 (8 л.): 0 8 5 0 3 3 6 6 8 0 1 1 4 4 7 <----- PROFIT!
Ответ должен лежать между 100000 и 1000000. т.е. между 32 и 64
В этот промежуток входят 43 и 58, но 43 нечетное и не может заканчиваться нулем
Ответ 58
Найдем первое число из данного диапазона, кратное семи.
100 / 7 = 14 и остаток 2.
100 + (7-2) = 105. (можно найти это число и другими путями).
И теперь задача сводится к нахождению суммы чисел последовательности 105, 112, ... где последнее число не превышает 200,
// PascalABC.NET 3.1, сборка 1192 от 07.03.2016
begin
Writeln('S=',Range(105,200,7).Sum)
end.
<u><em>Тестовое решение:</em></u>
S=2107
Собственно чтобы представить число в двоичную систему счисления, необходимо разделить его на максимально целую часть, которая при умножении на 2 давала нам ближайшее значение к этому числу. Т.е.
число 243: если мы умножим 121 на 2: 121*2=242;Т.е. 121 умноженное на 2 и есть ближайшее число к 243, но им не является, т.к. остаток 1, мы записываем его ниже и делим число дальше. Вспоминаем деление столбиком и высчитываем (во вложении). Также, есть более быстрое и продуктивное высчитывание (во вложении). В обоих решениях выписывание остатков происходит в обратном порядке для верного ответа.
Предпоследние семь строчек записывают массив работников и зарплату (созданная случайным образом), общую сумму и количество работников с указанной зарплатой в файл (в программе настроено в файл output.txt на локальном диске С, при желании можно изменить название файла и месторасположения его)
При правильной работе программы на диске С данный файл создается. Если его открыть, в нем будут те же данные, которые выдаст программа на экран монитора