1 / 12

Запись натурального числа в позиционной системе счисления с основанием, меньшим 10

Муниципальное автономное образовательное учреждение Лицей № 36. Запись натурального числа в позиционной системе счисления с основанием, меньшим 10. Автор: Перова Е.А., учитель информатики и ИТ. Нижний Новгород 2013. 68. 2. 2. 2. 2. 2. 2. 34. 17. 8. 2. 1. 4. 1. 0. 0. 0. 0.

deiter
Download Presentation

Запись натурального числа в позиционной системе счисления с основанием, меньшим 10

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Муниципальное автономное образовательное учреждение Лицей № 36 Запись натурального числа в позиционной системе счисления с основанием, меньшим 10 Автор: Перова Е.А., учитель информатики и ИТ Нижний Новгород 2013

  2. 68 2 2 2 2 2 2 34 17 8 2 1 4 1 0 0 0 0 0 Как перевести натуральные числа из десятичной системы счисления в систему с другим основанием? Ответ: 6810=10001002

  3. Алгоритм: Необходимо определять остаток от деления заданного числа и всех промежуточных целочисленных частных на основание и делать это до тех пор, пока частное не станет равным нулю. Полученные остатки и представляют собой цифры новой записи числа. Цифры новой записи числа можно записывать • в числовой массив; • в строковую переменную.

  4. Решим задачу двумя способами 1 способ: Обозначим заданное натуральное десятичное число –n, запоминаем его для вывода ответа –n2, основание системы счисления, в которую нужно перевести число – q, индекс массива – kol_zifr, массив – zifri.

  5. Программа: kol_zifr := 0;n2:=n; while n > 0 do begin {увеличиваем значение kol_zifr} kol_zifr := kol_zifr + 1; {определяем очередную цифру} zifri[kol_zifr ] := n mod q; {определяем целочисленное частное} n := n div q end; {выводим ответ: цифры в обратном порядке} write (‘Число ’,n2,‘ в системе счисления ‘,q, ‘ = ’); for i:= kol_zifrdownto 1 do write(zifri[i]);

  6. 2410=110002 Выполняем: число n=24, основание q=2 kol_zifr := 0; n2:=n; while n > 0 do begin kol_zifr:= kol_zifr + 1; zifri[kol_zifr] := n mod q; n := n div q end; write (‘Число ’,n2,‘ в системе счисления ‘,q, ‘ =’); for i:= kol_zifrdownto 1 do write(zifri[i]); while n > 0 do while n > 0 do 1 да 12 0 1 2 3 4 5 1 2 3 4 12 1 2 3 да 6 000 0001 00011 00 3 да 1 да 0 нет

  7. 2410=110002 Выводим результат: write (‘Число ’,n2,‘ в системе счисления ‘,q, ‘ =’); for i:= kol_zifrdownto 1 do write(zifri[i]); Число 24 в системе счисления2 = 1 2 3 4 5 00011 1 1 0 0 0

  8. Решим задачу двумя способами 2способ: Обозначим заданное натуральное десятичное число –n, запоминаем его для вывода ответа – n2, основание системы счисления, в которую нужно перевести число – q, новое число (как строка) – n1, цифра – zifra, цифра (как строка) – szifra.

  9. Как изменится наша программа? kol_zifr := 0; n2:=n; while n > 0 do begin {увеличиваем значение kol_zifr} kol_zifr := kol_zifr + 1; {определяем очередную цифру} zifri[kol_zifr ] := n mod q; {определяем целочисленное частное} n := n div q end; {выводим ответ:} write (‘Число ’,n2,‘ в системе счисления ‘,q, ‘ = ’); for i:= kol_zifrdownto 1 do write(zifri[i]); n1:=‘’; {определяем очередную цифру} zifra := n mod q; {преобразуем ее в строкуи дописываем ее к значению n1} str(zifra, szifra);{цифры в обратном порядке:} n1 := szifra + n1; write(n1);

  10. Какой способ лучше? Почему? Домашнее задание: 1.Написать программу для решения задачи (2 способа): «Сколько единиц в двоичной записи числа а?» 2.*Как преобразовать программу, чтобы число n переводилось в 16-ричную систему счисления?

  11. Практическая работа на компьютере: • Ввод программы, отладка и тестирование.

  12. Источники • Д.М. Златопольский «ЕГЭ по информатике. Решение задач по программированию». СПб.: «БХВ-Петербург», 2013. • http://book.kbsu.ru/theory/chapter4/1_4.html

More Related