===== PascalABC.NET =====
begin
var n := ReadInteger('n =');
var m := Range(1, n).Average;
if m > 17 then
Print(m - 5)
else
Range(1, n).Aggregate(BigInteger.One, (p, q) -> p * q).Print
end.
125
125/2=62 остаток -1
62/2=31 остаток 0
31/2=15 остаток 1
15/2=7 остаток 1
7/2=3 остаток 1
3/2=1 остаток 1
Записываем получившиеся остатки в обратном порядке , но начнем с последнего частного (1)
1 1 1 1 1 0 1 (2)=125 (10)
255
255/2=127 остаток 1
127/2=63 остаток 1
63/2=31 остаток 1
31/2=15 остаток 1
15/2=7 остаток 1
7/2=3 остаток 1
3/2=1 остаток 1
Опять таки записываем получившиеся остатки в обратном порядке , но начнем с последнего частного (1)
1 1 1 1 1 1 1 1
Var
x, y, d : real;
begin
read (x, y);
d := sqr (x) + sqr (y);
read (x, y);
if d > sqr (x) + sqr (y) then write ('Вторая ближе') else write ('Первая ближе');
end.
Const n=20;
var a:array[1..n] of integer;
i,i1,i2,x:integer;
begin
Randomize;
a[1]:=random(10);
write(a[1],' ');
for i:=2 to n do
begin
a[i]:=a[i-1]+random(10);
write(a[i],' ');
end;
writeln;
write('x = '); readln(x);
i1:=1; i2:=n;
repeat
i:=(i1+i2) div 2;
if a[i]<x then i1:=(i1+i2) div 2+1;
if a[i]>x then i2:=(i1+i2) div 2-1;
until (a[i]=x)or(i1>i2);
if a[i]=x then
begin
writeln('Искомый(ые) номер(а) элемента(ов):');
while (i>0)and(a[i]=x) do i:=i-1;
i:=i+1;
while (i<=n)and(a[i]=x) do begin write(i,' '); i:=i+1; end;
end
else writeln('Элемент не найден');
writeln;
end.
Пример:
5 6 14 15 15 22 30 36 45 45 50 56 60 64 67 76 84 92 99 101
x = 15
Искомый(ые) номер(а) элемента(ов):
4 5