===== PascalABC.NET =====
begin
var (k, kmax, s) := (1, 0, 1);
var a := ReadInteger;
if a = 0 then
begin
Print(1);
exit
end;
foreach var b in ReadSeqIntegerWhile(p -> p <> 0) do
begin
var sgn := Sign(b - a);
a := b;
if sgn = s then
k += 1
else
begin
if k > kmax then
kmax := k;
(k, s) := (2, sgn)
end
end;
if k > kmax then
kmax := k;
Print(kmax)
end.
<em>// PascalABC.NET 3.3.5, сборка 1636 от 10.03.2018</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var n:=ReadInteger('n=');
var a:=ArrRandom(n,-99,99); a.Println;
a.OrderBy(t->t).Println; // 1
var b:=Copy(a); b.Transform(t->t mod 10=0?0:t); b.Println; // 2
Range(2,n-1,3).Select(i->a[i]).Println; // 3
Writeln('Элементов после max: ',n-a.IndexMax-1) // 4
end.
<u>Пример</u>
n= 20
8 37 88 31 -15 -26 -34 24 -31 -31 -91 -40 -49 -91 45 -30 -79 -78 -2 39
-91 -91 -79 -78 -49 -40 -34 -31 -31 -30 -26 -15 -2 8 24 31 37 39 45 88
8 37 88 31 -15 -26 -34 24 -31 -31 -91 0 -49 -91 45 0 -79 -78 -2 39
88 -26 -31 -40 45 -78
Элементов после max: 17
<em>// PascalABC.NET 3.2, сборка 1387 от 17.02.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var a,b:integer;
Write('Введите границы диапазона: '); Read(a,b);
if b<a then Swap(a,b);
Range(a,b).Where(x->x mod 7=0).Println
end.
<u>Пример</u>
Введите границы диапазона: -20 67
-14 -7 0 7 14 21 28 35 42 49 56 63
Сорок восемь кб равно девяносто шесть тишч бит. Ето число нужно поделить на вес символа и получим кол-во символов. И получается шесть тишч символов. И соответственно делим на шестьдесять четире и сорок восемь и получаца... Блин. ничего не получаца. Тогда используй считалку, может поможет. Шанс один к четирем. Удачи.
Длина маш. команды = код операции +адрес1+адрес2
2^i = 50----> i =6 бит - длина команды.
2^(10) = 1024 ----> 10 бит длина одного адреса
6+10+10 = 26 бит длина машинной команды