Работа 1.2. Перевод чисел из одной системы счисления в другую
Цель работы: освоение методов перевода чисел из десятичной в другие позиционные системы счисления с использованием электронных таблиц и программ на Паскале.
Электронные таблицы
Задание 1 (уровень 1). Воспроизведите электронную таблицу для перевода недесятичного числа в десятичную систему счисления. Используя эту таблицу, выполните перевод в десятичную систему счисления следующих чисел: 110101,10112; 35071,2148; 24013,32015.
Для перевода числа используется разложение его по базису. Основание системы — в ячейке D2. Номера разрядов числа равны степеням основания в базисе (в развернутой форме). Значащие цифры числа вписываются в соответствующие ячейки пятой строки. В шестой строке вычисляются слагаемые развернутой формы числа.
Например, в ячейке В6 записана формула: =B5*$D$2^B4.
В ячейке C6:=C5*$D$2^C4 и т. д.
Результат перевода получается в ячейке N5, где стоит формула :=СУММ(B6:L6).
Данная таблица рассчитана на 6-разрядную целую часть и 4-разрядную дробную часть. При необходимости ее можно расширить.
Задание 2 (уровень 1). Используя созданную электронную таблицу, получите десятичный эквивалент числа 10101, считая его записанным во всех возможных системах счисления от двоичной до девятеричной.
Задание 3 (уровень 3). Постройте электронную таблицу для перевода целого десятичного числа в систему счисления с основанием p (2 <= p <= 9). Протестируйте работу этой таблицы.
Программирование на Паскале
Задание 4 (уровень 1). Воспроизведите программу на Паскале Numbers_p_10. С помощью этой программы выполните перевод в десятичную систему счисления следующих недесятичных целых чисел: 1101012; 350718; 240135.
Задание 5 (уровень 1). Воспроизведите программу на Паскале Numbers10p. С помощью этой программы выполните перевод десятичного числа 1234 в систему счисления с основаниями 2, 3, 5, 8.
Задание 6 (уровень 2). Используя текстовой редактор, постройте трассировочную таблицу выполнения программы Numbers10p для следующих значений исходных данных: N10 = 9, p = 2.
Задание 7 (уровень 3). Составьте программу на Паскале, переводящую дробное (меньше единицы) недесятичное число с основанием p (2 <= p <= 9) в десятичную систему счисления. Выполните тестирование программы.
Задание 8 (уровень 3). Составьте программу на Паскале, переводящую десятичную дробь в систему счисления с основанием p (2 <= p <= 9). Выполните тестирование программы.
Используемая литература:
Информатика. Углубленный уровень: практикум для 10-11 классов : в 2 ч. Ч. 1 / И. Г. Семакин, Т. Ю. Шеина, Л. В. Шестакова. - М.: БИНОМ. Лаборатория знаний, 2013. - 168 с. : ил.