Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика1.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
132.03 Кб
Скачать

Часть I. Информация, системы счисления, основы логики, информационные модели 43

Какая цифра стоит в седьмой строке на 120-м месте (считая слева направо)? Решение

Заметим, что длина цепочки символов, стоящей в г-й строке (если / < 10), равна 2' -1. Поэтому в седьмой строке будет стоять цепочка из 27 -1=127 символов. Из записи первых четырех строк видно, что конец цепочки представляет собой последовательность цифр от 1 до номера строки «', причем перед этой последовательностью всегда стоит цифра 1.

Значит, в седьмой строке, начиная со 120-го места, записаны такие цифры: ...11234567.

Ответ: 1.

3.5. Цепочки символов (строки) создаются по правилу, описанному в задаче 3.4.

Сколько раз в общей сложности встречаются в восьмой строке чет­ные цифры (2, 4, 6, 8)?

Решение

Опишем алгоритм определения количества четных цифр в очередной строке. В первой строке количество четных цифр равно нулю. В каждой следующей строке количество четных цифр удваивается за счет того, что в ней предыдущая цепочка цифр записывается дважды. Кроме этого, в строках с четными номерами добавляется еще одна четная цифра.

Применим этот алгоритм, чтобы вычислить количество четных цифр в восьмой строке.

Номер строки

Действие

Количество четных цифр

I

0

2

Удвоить, добавить 1

1

3

Удвоить

2

4

Удвоить, добавить 1

5

5

Удвоить

10

6

Удвоить, добавить 1

21

7

Удвоить

42

8

Удвоить, добавить 1

85

Ответ: 85.

3.6. Цепочки символов (строки) создаются по следующему правилу. Первая строка состоит из одного символа — цифры «1». Каждая из последующих цепочек создается такими действиями: в начало записывается число — номер строки по порядку (для i'-й строки

44

Информатика

указывается число /), далее дважды подряд записывается предыдущая строка.

Вот первые 4 строки, созданные по этому правилу:

  1. 1

  2. 211

  3. 3211211

  4. 432112113211211

Сколько раз встречается цифра «1» в первых семи строках (сум­марно)?

Решение

Из анализа приведенных четырех строк видно, что количество еди­ниц в /-й строке (для / < 10) равно 2'1. Поэтому количество единиц в первых семи строках равно сумме степеней числа 2:

2°+2' + 22+23+24+25+26=1 +2 + 4 + 8 + 16 + 32 + 64=127

В данной задаче можно избежать суммирования нескольких слага­емых, если воспользоваться следующей формулой:

2°+2'+ ... + 2" = 2"+1-1

В нашем случае получаем: 27- 1 = 128 -1 = 127. Заметим, что данная формула является частным случаем общей формулы для суммы началь­ных членов геометрической прогрессии.

Ответ: 127.

3.7. Упаковка информации методом RLE-кодирования состоит в следующем.

Упакованная последовательность содержит управляющие байты, за каждым управляющим байтом следует один или несколько байтов данных.

Если старший бит управляющего байта равен 1, то следующий за управляющим байт данных нужно повторить столько раз, сколько записано в оставшихся 7 битах управляющего байта.

Если же старший бит управляющего байта равен 0, то надо взять несколько следующих байтов данных без изменения. Сколько имен­но — записано в оставшихся 7 битах управляющего байта.

После кодирования методом RLE получилась следующая последо­вательность байтов:

10000011 10101010 00000010 10101111 11111111 10000101 10101010

Сколько байтов будет содержать данная последовательность после распаковки?