1)
_256 _100100 _ ABC
<u> 77 </u> <u> 1011 </u> <u> FF</u>
157 11001 3D
2) A B C D E F 10 11 12 13 14
(10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20)
3)
1011 254
<u> 111</u> <u> 613</u>
10010 1067<u>
</u>
Если без левых точек в конце( например во 2)-10. ) то:
1) 567
2) -10
5) 8
10) 812
Если точки не просто так, тогда:
1) 567
5) 8
10) 812
1010
10 / 2 = 5 остаток 0
5 / 2 = 2 остаток 1
2 / 2 = 1 остаток 0
собираем последний результат и остатки в обратном порядке - получаем 1010
Посчитаем сколько всего узлов на этом листке:
у нас он N клеточек в высоту, значит всего в каждом столбике <span>N+1 узел;
у нас он М клеточек в ширину, значит всего в каждой строчке М+1 узел.
Значит всего узлов (</span><span>N+1)*(М+1).
Чтобы определьть прямоугольник, надо определить два узла в которых будут противоположные углы:
первый узел мы можем выбрать (</span><span>N+1)*(М+1) способами;
второй узел мы можем выбрать </span><span>N*М способами (мы не можем выбрать тот столбик и тот ряд, в котором у нас стоит первый узел).
Тоэсть всего способов выбрать (</span>N+1)*(М+1)*<span>N*М, но это не так.
Рассмотрим весь лист как выбраный прямоугольник.
Пусть мы его выбрали так:
(0; 0), (</span><span>N+1; М+1).
Этот же прямоугольник мы считали, когда плучали с такими координатами:
1) (</span><span>N+1; М+1), (0; 0).
2) (</span><span>N+1; 0), (0; М+1).
3) (0; М+1), (</span><span>N+1; 0).
И так с каждым прямоугольником, тоэсть каждый прямоугольник мы считаем 4 раза, тоэсть конечная формула такова:
</span>(N+1)*(М+1)*N*М / 4.
Осталось составить прогрмму, которая будет это вичислять.
С++:
#include <iostream>using namespace std;int main()
{
int N, M, k;
cin >> N >> M;
k = (N+1)*(M+1)*N*M / 4;
cout << k << endl;
return 0;
}
Pascal:
program Znanija;
var N, M, k:integer;
begin
read(N);
read(M);
k:=((N+1)*(M+1)*N*M) div 4;
writeln();
writeln(k);
end.
var i,n,p,s,k,m:integer;
a:array [1..11] of integer;
begin
n:=10;
p:=1;
write('Массив: ');
for i:=1 to n do
begin
a[i]:=random(9)+1;
if a[i] mod 3 = 0 then p:=p*a[i];
write(a[i]:2,' ')
end;
writeln;
if p<>1 then writeln('Произведение элементов кратных 3 равно ',p)
else writeln('Элементов кратных 3 нет. Произведение элементов кратных 3 равно 0');
n:=9;
write('Массив: ');
for i:=1 to n do
begin
a[i]:=random(9)+1;
if a[i] > 5 then
begin
s:=s+a[i];
k:=k+1
end;
write(a[i]:2,' ')
end;
writeln;
if k<>0 then writeln('Cреднее арифметическое элементов массива больше 5 равно ',s/k:0:3)
else writeln('Элементов больше 5 нет. Cреднее арифметическое элементов массива больше 5 равно 0');
n:=11;
write('Массив: ');
for i:=1 to n do
begin
a[i]:=random(9)+1;
write(a[i]:2,' ')
end;
writeln;
m:=a[1];
for i:=2 to n do
if a[i]>m then m:=a[i];
writeln('Самый большой элемент массива равен ',m)
end.