<em>// PascalABC.NET 3.3, сборка 1542 от 05.10.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var (n,m):=ReadInteger2('Введите через пробел n и m:');
var a:=ArrRandom(10,n,m);
a.Println
end.
<u>Пример</u>
Введите через пробел n и m: -6 20
15 10 16 17 1 14 -4 19 1 18
Задача очевидная и очень простая.
Ответ выводится в формате (номинал) х (кол-во)
Одна программа длинная, но простая, а другая - более сложная.
A-b=2-3=-1
a=-1
a+2*b=-1+2*3=5
b=5
a*b=-1*5=-5
a=-5
a/b=-5/5=-1
b=-1
Ответ: 2
Решение можно получить, рассуждая следующим образом.
Максимальное количество возможных сложений равно количеству команд и это дает в результате 1+1+1+1+1+1=6, но никак не 45. Разница большая, поэтому её надо преодолевать пр помощи умножения.
Пойдем от обратных операций - будем из 45 получать 1 путем деления на 3 и вычитания 1.
1) 45/3=15 2) 15/3=5 3) 5 на 3 не делится, вычитаем 1 и получаем 4. 4) 4 на 3 не делится, вычитаем 1 и получаем 3. 5) 3/3=1 - мы пришли к 1 за 5 команд.
Теперь осталось записать в обратном порядке команды калькулятора.
Мы должны получить следующие шаги: 1) 1х3=3 2) 3+1=4 3) 4+1=5 4)5х3=15 5) 15х3=15.
Ответ: 21122