koldunovan
?>

С, : последовательность чисел 2559, 1791, 1023, 255, 2799, 2031, 1263, 495, 2271, 1503, , 768 была получена следующим образом. сначала были выписаны 1000 первых натуральных чисел, кратных 3, по возрастанию (3, 6, … 3000 затем все числа были переведены в шестнадцатеричную систему, причём каждое число было записано тремя цифрами (003, 006, …, bb8). затем каждая запись числа была преобразована в строку и символы в этой строке были записаны в обратном порядке (300, 600, …, 8bb). после чего полученные строки были отсортированы в порядке, обратном алфавитному (ff9, ff6, …, 003). затем строки были обратно преобразованы в исходные числа (2559, 1791, …, 768). определите номер места, на котором стоит в последовательности число 1971 (места нумеруются с 1). указание: для решения можно использовать электронные таблицы. при сдаче в первой строке запишите ответ, в следующих строках описание процесса получения ответа (это может быть - описание действий, программа и т.д.)

Информатика

Ответы

kirillreznikov
767.

Программа на питоне, делающая то, что написано в условии:
numbers = range(3, 3001, 3)
numbers_base16 = ("{:03x}".format(n) for n in numbers)
srebmun_base16 = (s[::-1] for s in numbers_base16)
srebmun_base16_sorted = sorted(srebmun_base16, reverse=True)
numbers_base16_sorted = (s[::-1] for s in srebmun_base16_sorted)
numbers_sorted = (int(s, 16) for s in numbers_base16_sorted)
 
i = 1
while next(numbers_sorted) != 1971:
    i += 1
print(i)
Tuzov
Найдем количество бит на символ при формулы:
N = 2^i, где:
N - алфавит.
I - количество бит на символ.

26 = 2^i.
I = 5 бит (не можем взять 4 бита, так как 16 < 24, не хватит).

Найдем объем пароля:
V = K * I, где:
V - объем.
K - размер пароля.

V = 10 * 5 = 50 бит.

Так как ответ нужно дать в байтах, переведем биты в байты:

50/8 = 7 байт (6 байт взять не можем, так как 48 < 50).

Найдем сколько всего памяти отводится на одного человека:

500 / 10 = 50 байт.

Из этих 50 байт, 7 байт отводится на пароль. Значит на дополнительные сведения:
50 - 7 = 43 байта.

ответ: 43 байта.
veniaminsem

1) От 10 до 14

2) random(1, 10); random(-10,10); random(50,100);

3)

var a:array[1..100] of integer;

   i, p, o:integer;

begin

 p := 0;

 o := 0;

 for i := 1 to 100 do

   a[i] := random(-20, 20);

 writeln(a);

 for i := 1 to 100 do begin

   if a[i] >= 0 then p := p + 1

   else o := o + 1;

 end;

 writeln('Положительных: ' + p);

 writeln('Отрицательных: ' + o);

end.

4)

var a:array[1..20] of integer;

   b:array[1..20] of integer;

   i:integer;

begin

 randomize;

 for i := 1 to 20 do

   begin

   a[i] := random(1, 5);

   b[i] := random(1, 5);

   end;

 for i := 1 to 20 do begin

   if a[i] = b[i] then begin

   writeln('Номер: ' + i);

   writeln('Значение: ' + a[i]);

   end;

 end;

end.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

С, : последовательность чисел 2559, 1791, 1023, 255, 2799, 2031, 1263, 495, 2271, 1503, , 768 была получена следующим образом. сначала были выписаны 1000 первых натуральных чисел, кратных 3, по возрастанию (3, 6, … 3000 затем все числа были переведены в шестнадцатеричную систему, причём каждое число было записано тремя цифрами (003, 006, …, bb8). затем каждая запись числа была преобразована в строку и символы в этой строке были записаны в обратном порядке (300, 600, …, 8bb). после чего полученные строки были отсортированы в порядке, обратном алфавитному (ff9, ff6, …, 003). затем строки были обратно преобразованы в исходные числа (2559, 1791, …, 768). определите номер места, на котором стоит в последовательности число 1971 (места нумеруются с 1). указание: для решения можно использовать электронные таблицы. при сдаче в первой строке запишите ответ, в следующих строках описание процесса получения ответа (это может быть - описание действий, программа и т.д.)
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

kate1610
d111180
yahottabych201379
artemy682719
alesia1986
nchalov2
mnogoz
Buninilya
ramzaev09
minchevaelena23
gabbro19975650
nadezhdasvirina
Alyona744
Мусаев Игоревич371
ilysozkn27