Получается, мы должны найти кол-во чисел в диапазоне от минимального числа из одиннадцати цифр - это единица и десять нулей, до максимального из тридцати цифр - это число состоящее из тридцати девяток. Данное кол-во чисел равно разности наибольшего и наименьшего. Наименьшее число состоит из единицы и нулей, как мы поняли раньше, а значит только одна из цифр числа с тридцатью девятками изменится и станет восьмеркой. Следовательно, в таком числе будет двадцать девять девяток и одна восьмерка, значит ответом будет: Двадцать девять.
program P1;
uses
crt;
var
mas : array[1..20] of integer;
i,j,k : integer;
tmp : string;
begin
clrscr;
writeln('Start array: ');
for i := 1 to 20 do
begin
mas[i] := random(100);
write(mas[i],' ');
end;
for i := 1 to 20 do
begin
if mas[i] mod 2 = 0 then
mas[i] := 0;
end;
for i := 1 to 20 do
begin
if mas[i] = 0 then
begin
for j := 20 downto i do
if mas[j] <> 0 then
begin
k := mas[j];
mas[j] := mas[i];
mas[i] := k;
end;
end;
end;
writeln('');
writeln('Result array: ');
for i := 1 to 20 do
write(mas[i],' ');
readln(tmp);
read(tmp);
end.
1-а, 2-в, 3-г, 4-, 5-в, 6-14,7-г, дальше я не бум бум))
<h3>PascalABC.NET 3.4.2, сборка 1884 от 24.11.2018</h3><h3>Внимание! Если программа не работает, обновите версию!</h3>
begin
var a := ReadSeqInteger(20).Where(t -> Abs(t) < 10)
.Aggregate(BigInteger(1), (p, q)-> p * q).Println
end.
<h2>Пример</h2><h3>9 9 9 9 9 9 9 9 9 9 9 9 9 -9 -9 -9 -9 9 9 9</h3><h3>12157665459056928801 </h3>