Перевод чисел в нашу систему счисления:
1. 107 - восьмеричная
2. 235 - двоичная
3. 1989 - десятеричная
4. 58223 - шеснадцатиричная
Поскольку возможен случай, когда даже 17 перчаток окажутся правыми, надо взять на одну больше, т.е. 18.
В подобных задачах ответ всегда большее из чисел плюс единица.
IP 18. 168. 250. 32
cеть 18. 168. 240. 0
маска 255.255. XXX. 0
-------------------------------------
250= 1111 1010 (2сс)
240= 1111 0000 (2сс)
XXX=1111 0000 =240---> единственный возможный третий байт маски
ответ 1
Var N:Array[1..20] of integer; i,j,q,k,max:integer;begin Randomize;writeln('массив');for i:=1 to 20 do beginN[i]:= random(100)-50;write(N[i]:4);end;writeln;i:=0;writeln('Измененый массив');While j<20 do beginj:= j + 2; k := N[j-1];N[j-1]:=N[j]; N[j]:= k;end;foreach q in N do beginwrite(q :4);end;end.
var N,M:Array[1..20] of integer; i,j,min,q,k,max:integer;begin Randomize;max:=-200; min:=200;writeln('1 массив');for i:=1 to 20 do beginN[i]:= random(100)-50;write(N[i]:4);if ((N[i]>0 )and(N[i] mod 2 = 0))then beginif max < N[i] then max := N[i];if min > N[i] then min := N[i];j:= j + 1;M[j]:=N[i];end;end;writeln;writeln('2 массив');foreach k in M do beginwrite(k:4);end;writeln;if (max = -200) or (min = 200) then write ('нет чётных положительных элементов')else beginwrite('max = ' ,max:4);write(' min = ' ,min:4);end;end.
Алгоритм:
1 цифра числа + 2 цифра числа - 1.
Вход / Выход
91 / 9
80 / 7
73 / 9
20 / 1