Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metodichka_po_ostatochnym_znaniam (1).doc
Скачиваний:
7
Добавлен:
14.05.2015
Размер:
6.02 Mб
Скачать

Еще пример задания:

Каждая ячейка памяти компьютера, работающего в троичной системе счисления, может принимать три различных значения (-1, 0, 1). Для хранения некоторой величины отвели 4 ячейки памяти. Сколько различных значений может принимать эта величина?

Решение:

  1. непривычность этой задачи состоит в том, что используется троичная система

  2. фактически мы имеем дело с языком, алфавит которого содержит M=3 различных символа

  3. поэтому количество всех возможных «слов» длинойNравно

  4. для получаем

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

Возможные ловушки:

  • если не осознать, что используется троичная (а не двоичная!) система, можно «по инерции» получить неправильный ответ

Еще пример задания:

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

    <Фамилия> – 16 символов: русские буквы (первая прописная, остальные строчные),

    <Имя> – 12 символов: русские буквы (первая прописная, остальные строчные),

    <Отчество> – 16 символов: русские буквы (первая прописная, остальные строчные),

    <Год рождения> – числа от 1992 до 2003.

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

1) 282) 293)464)56

Решение:

  1. очевидно, что нужно определить минимально возможные размеры в битах для каждого из четырех полей и сложить их;

  2. важно! известно, что первые буквы имени, отчества и фамилии – всегда заглавные, поэтому можно хранить их в виде строчных и делать заглавными только при выводе на экран (но нас это уже не волнует)

  3. таким образом, для символьных полей достаточно использовать алфавит из 32 символов (русские строчные буквы, «е» и «ё» совпадают, пробелы не нужны)

  4. для кодирования каждого символа 32-символьного алфавита нужно 5 бит (32 = 25555), поэтому для хранения имени, отчества и фамилии нужно (16 + 12 + 16)•5=220 бит

  5. для года рождения есть 12 вариантов, поэтому для него нужно отвести 4 бита (24 = 16 ≥ 12)

  6. таким образом, всего требуется 224 бита или 28 байт

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

Тема №12(время – 5 мин)

Тема: Работа с массивами и матрицами в языке программирования9.

Что нужно знать:

  • работу цикла for(цикла с переменной)

  • массив – это набор однотипных элементов, имеющих общее имя и расположенных в памяти рядом

  • для обращения к элементу массива используют квадратные скобки, запись A[i]обозначает элемент массиваAс номером (индексом)i

  • матрица (двухмерный массив) – это прямоугольная таблица однотипных элементов

  • если матрица имеет имя A, то обращение A[i,k]обозначает элемент, расположенный на пересечении строкиiи столбцаk

  • элементы, у которых номера строки и столбца совпадают, расположены на главной диагонали10

    A[1,1]

    A[2,2]

    A[3,3]

    A[4,4]

  • выше главной диагонали расположены элементы, у которых номер строки меньшеномера столбца:

    A[1,2]

    A[1,3]

    A[1,4]

    A[2,3]

    A[2,4]

    A[3,4]

  • ниже главной диагонали расположены элементы, у которых номер строки больше номера столбца:

A[2,1]

A[3,1]

A[3,2]

A[4,1]

A[4,2]

A[4,3]