Из десятичной системы счисления в двоичную. Паскаль

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

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

 Рассмотрим код:

var a,b,c,i,k:integer;
mas: array[0..1000] of integer;
begin
k:=0;
readln(a);
    repeat
          b:=a mod 2;
          k:=k+1;
          mas[k]:=b;
          c:=a div 2;
          if c>=2 then a:=c;
    until c<2;
write(c);
for i:=k downto 1 do
    write(mas[i]);
end.

Комментарии:

— используем цикл с постусловием. т.к. нам не известно, сколько раз будет выполняться цикл

— переменная служит для записи остатков от деления, которые помещаются в массив

mas[k]:=b;

— переменная k для подсчета остатков в массиве

— после выхода из массива выводим последний остаток (переменная с) и остальные остатки, сохраненные в массиве, в обратном порядке

Позднее рассмотрим:

алгоритм перевода чисел из двоичной системы счисления в десятичную

— перевод из десятичной системы счисления в любую другую (3-ю — 16-ричную)

Andrey K

View Comments

  • Не очень понятно зачем делать массив с 0, когда запись в него идет с 1-го элемента

Recent Posts

Решение задачи №6 и задачи №22 ЕГЭ по информатике 2021

Настала пора написать серию мини-обучалок по решению задач ЕГЭ по информатике версии 2021 года. В…

4 года ago

Внеурочное занятие по информатике. Пишем игру «Поле чудес» на Python.

Данная статья будет полезна для учителей информатики, которые занимаются программированием с детьми внеурочно. Опыт  показывает, …

5 лет ago

Основные алгоритмы в помощь школьнику. Часть 1

Рассмотрим набор наиболее часто встречающихся задач на программирование в школьном курсе информатики. Добавляйте свои задачи…

6 лет ago

Школьный тур Всероссийской олимпиады школьников по информатике 9-11 класс (2018-2019). Разбор задач. Часть 2

В прошлый раз мы разобрали первые две задачи школьного тура Всероссийской олимпиады школьников, проводимой в…

6 лет ago

Школьный тур Всероссийской олимпиады школьников по информатике 9-11 класс (2018-2019). Разбор задач. Часть 1

Закончился школьный тур Всероссийской олимпиады школьников. Разберем первую и вторую задачи тура, проводимого в московских…

6 лет ago

Школьный этап Всероссийской олимпиады школьников по информатике 2017 (9-11 классы). Задача №4. «Плацкартный вагон»

Задача. В плацкартном вагоне 54 места, пронумерованных числами от 1 до 54. Вагон разбит на 9…

7 лет ago