Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
А11.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
441.34 Кб
Скачать

A14 (базовый уровень, время – 2 мин)

Для кодирования цвета фона страницы Интернет используется атрибут bgcolor="#ХХХХХХ", где в кавычках задаются шестнадцатеричные значения интенсивности цветовых компонент в 24-битной RGB-модели. Какой цвет будет у страницы, заданной тэгом <body bgcolor="#FFFFFF">?

1) белый 2) зеленый 3)красный 4) синий

Решение:

  1. значение FF16 = 255 соответствует максимальной яркости, таким образом, яркость всех составляющих максимальна, это белый цвет

  2. правильный ответ – 1

A15 (базовый уровень, время – 2 мин)

Объем сообщения, содержащего 4096 символов, равен 1/512 части Мбайта. Какова мощность алфавита, с помощью которого записано это сообщение?

1) 8 2) 16 3) 4096 4) 16384

Большие числа. Что делать?

Обычно (хотя и не всегда) задачи, в условии которых даны большие числа, решаются достаточно просто, если выделить в этих числах степени двойки. На эту мысль должны сразу наталкивать такие числа как

128 = 27, 256 = 28, 512 = 29 , 1024 = 210,

2048 = 211, 4096 = 212 , 8192 = 213, 16384 = 214, 65536 = 216 и т.п.

Нужно помнить, что соотношение между единицами измерения количества информации также представляют собой степени двойки:

1 байт = 8 бит = 23 бит,

1 Кбайт = 1024 байта = 210 байта

= 210 · 23 бит = 213 бит,

1 Мбайт = 1024 Кбайта = 210 Кбайта

= 210 · 210 байта = 220 байта

= 220 · 23 бит = 223 бит.

Правила выполнения операций со степенями:

  • при умножении степени при одинаковых основаниях складываются

  • … а при делении – вычитаются:

Решение (вариант 1):

  1. в сообщении было 4096 = 212 символов

  2. объем сообщения

1/512 Мбайта = 223 / 512 бита = 223 / 29 бита = 214 бита (= 16384 бита!)

  1. место, отведенное на 1 символ:

214 бита / 212 символов = 22 бита на символ = 4 бита на символ

  1. 4 бита на символ позволяют закодировать 24 = 16 разных символов

  2. поэтому мощность алфавита – 16 символов

  3. правильный ответ – 2.

A17 (базовый уровень, время – 2 мин)

Значения двух массивов A[1..100] и B[1..100] задаются с помощью следующего фрагмента программы:

for n:=1 to 100 do

A[n] := (n-80)*(n-80);

for n:=1 to 100 do

B[101-n] := A[n];

Какой элемент массива B будет наибольшим?

1) B[1] 2) B[21] 3) B[80] 4) B[100]

Решение:

  1. здесь два цикла, в первом из них заполняется массив А, во втором – массив В

  2. в элемент массива A[n] записывается квадрат числа n-80; все элементы массива А неотрицательны (как квадраты чисел)

  3. посмотрим чему равны некоторые элементы массива А:

A[1] = (1–80)2 = (–79)2 = 792 A[2] = (2–80)2 = (–78)2 = 782

...

A[80] = (80–80)2 = (0)2 = 0 A[81] = (81–80)2 = (1)2 = 1

...

A[99] = (99–80)2 = 192 A[100] = (100–80)2 = 202

  1. таким образом, при увеличении n от 1 до 80 значение A[n] уменьшается от 792 до нуля, а потом (для n > 80) возрастает до 202

  2. отсюда следует, что максимальное значение в массиве A – это A[1] = 792

  3. во втором цикле для всех номеров n от 1 до 100 выполняется оператор

B[101-n] := A[n];

который просто переписывает элементы массива A в массив В, «развертывая» массив в обратном порядке (элемент A[1] будет записан в B[100], а A[100] – в B[1])

  1. A[1], наибольший элемент массива А, будет записан в B[100], поэтому B[100] – наибольший элемент в массиве В

  2. таким образом, правильный ответ – 4.