rytikovabs
?>

Кодной телефонной станции подключено 250 номеров, к другой — 1800. двоичными числами какой минимальной длины можно их закодировать?

Информатика

Ответы

Vasilisan
Кпервой 8 ко второй 11
myatadinamo
// альтернативный вариантuses graphabc; begin setwindowsize(900,800); line(250,100, 300,50); lineto(350,100); lineto(250,100); floodfill(300,70, clgreen); line(220,200, 300,100); lineto(380,200); lineto(220,200); floodfill(300,150, clgreen);   line(200,300, 300,200); lineto(400,300); lineto(200,300); floodfill(300,250, clgreen); rectangle(290, 300,310, 320); floodfill(300,305, clbrown); line(0, 300, 100, 350);   lineto(200, 320); lineto(400, 320); lineto(600, 370); lineto(600,400); lineto(0,400); lineto(0,300); end.
zotcet7
Не самый лёгкий, но работающий способ const  n = 10000; //не изменяемая по ходу программы переменная var  a: array[1..n] of integer;   b: array[1..10]of integer;   c: array[1..10]of integer;   i, s, v: integer; begin  for i : = 1 to 10 do //заполнение массива с числами от 1 до 10    c[i] : = i;   for i : = 1 to n do //заполнение массива    a[i] : = random(10) + 1; //делается для того чтобы в массиве не было нулей  for i : = 1 to n do    case a[i] of      1: b[1] : = b[1] + 1;       2: b[2] : = b[2] + 1;       3: b[3] : = b[3] + 1;       4: b[4] : = b[4] + 1;       5: b[5] : = b[5] + 1;       6: b[6] : = b[6] + 1;       7: b[7] : = b[7] + 1;       8: b[8] : = b[8] + 1;       9: b[9] : = b[9] + 1;       10: b[10] : = b[10] + 1;     end;     for i : = 1 to 10 do    for s : = 1 to 9 do      if b[s] > b[s + 1] then begin        v : = b[s];         b[s] : = b[s + 1];         b[s + 1] : = v;         v : = c[s];         c[s] : = c[s + 1];         c[s + 1] : = v;       end;   writeln(c[10], ' - их ', b[10]);     end.

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

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

Кодной телефонной станции подключено 250 номеров, к другой — 1800. двоичными числами какой минимальной длины можно их закодировать?
Ваше имя (никнейм)*
Email*
Комментарий*