Сначала переводим из 16 системы счисления в 10
F9D2=F*16^3+9*16^2+D*16+2=63954
Теперь десятичное число 63954 переводим в 2 систему счисления:
63954/2 =31977 остаток 0
31977/2=15988 ост 1
15988/2=7994 ост 0
7994/2=3997 ост 0
3997/2=1998 ост 1
1998/2=999 ост 0
999/2=499 ост 1
499/2=249 ост 1
249/2=124 ост 1
124/2=62 ост 0
62/2=31 ост 0
31/2=15 ост 1
15/2=7 ост 1
7/2=3 ост 1
3/2=1 ост 1
Записываем 1 и все остатки в обратном порядке, получаем:
1111100111010010 в 2 системе счисления. число занимает 16 ячеек, т.е. 2 байта как и в условии
Получаем ответ: 1111100111010010
// Pascal ABC.Net версия 3.2 сборка 1387
begin
writeln('исходный массив:');
var a:=ArrRandom(100,-1000,1000).Println();
writeln('1 50 по возр:');
a.Reverse().Skip(50).Sorted().Println();
writeln('2 50 по убыв:');
a.Skip(50).SortedDescending().Println();
end.
Во первых ошибка во фрагменте там должны быть цыфирки 1, а не буква l
т.е for n:=1 to 6 do
for m:=1 to 5 do begin
Текст программы
Uses crt;
var c:array[1..6,1..5] of integer;
n,m:integer;
begin
с[4,3]:=10;
for n:=1 to 6 do
for m:=1 to 5 do begin
с[n,m]:=с[n,m]+(2*n-m);
if (m=5)then
writeln(c[n,m])
else write(c[n,m],' ');
end;
writeln;writeln;
write('C[4,3]=',C[4,3]);
readkey;
end.
Прогоночный вывод
1 0 -1 -2 -3
3 2 1 0 -1
5 4 3 2 1
7 6 15 4 3
9 8 7 6 5
11 10 9 8 7
Отсюда получаем что если с[4,3]:=10 перед началом цикла то с[4,3]=15
в противном случае с[4,3]=5
1234(16)=1001000110100(2)=5 единиц
var a:array[1..15]of integer;
x,i:integer;
begin
i:=1;
while i<16 do begin
readln(x);
if x<0 then a[i]:=x;
inc(i);
end;
for i:=1 to 15 do if a[i]<0 then writeln(i);
end.