сначала нужно наполнить емкости по 8 и 5 л (это 13 л в итоге) , перелить из них воду в 12л, там останется 1 л. ну этот 1л плюс емкость 5 л = 6л. видимо так.
Набираем полные емкости 5 и 8 литров, переливаем сначала 8 литров в 12 литровую емкость, а потом из 5 литровой наливаем до краев в 12 литровый сосуд, еще 4 литра = в итоге в 5 литровой емкости остается ровно 1 литр
// PascalABC.NET 3.1, сборка 1198 от 11.03.2016 begin var k:=0; var Terminate:boolean; repeat Terminate:=True; var n:=ReadInteger('Введите номер месяца:'); case n of 1,3,5,7,8,10,12:Writeln('31 день'); 4,6,9,11:Writeln('30 дней'); 2:Writeln('28 дней в обычном году и 29- в високосном') else begin Writeln('Вы ошиблись, номер должен быть от 1 до 12'); Inc(k); Terminate:=False end end until Terminate; if k>0 then Writeln('Вы ошиблись ',k,' раз(а).') end.
Тестовое решение: Введите номер месяца: 18 Вы ошиблись, номер должен быть от 1 до 12 Введите номер месяца: 0 Вы ошиблись, номер должен быть от 1 до 12 Введите номер месяца: 5 31 день Вы ошиблись 2 раз(а).