Системы счисления - Pascal ABC (12524)
Формулировка задачи:
Определите основы систем исчисления от двоичной до пьятнадцятковои, где число 2A16 в младшем разряде содержит цифру ноль.
Решение задачи: «Системы счисления»
textual
Листинг программы
- uses crt;
- const digit:string[15]='0123456789ABCDE'; //цифры в СС от 2 до 15
- {функция перевода Dec числа в сс 2-15
- n-число в сс 10, r-система счисления в которую переводим}
- function FromDec(n,r:integer):string;
- var s:String;
- begin
- s:='';
- repeat
- s:=digit[(n mod r)+1]+s;
- n:=n div r;
- until n=0;
- FromDec:=s;
- end;
- var ss:byte;
- n:longint;
- begin
- n:=$2A;
- for ss:=2 to 15 do
- if FromDec(n,ss)[length(FromDec(n,ss))]='0' then
- writeln('CC ',ss,'=',FromDec(n,ss))
- end.
Объяснение кода листинга программы
Этот код на языке Pascal ABC выполняет следующие действия:
- Импортируется библиотека crt.
- Определяется константа digit, которая представляет собой массив из 15 строк, содержащих цифры от 2 до 15.
- Определяется функция FromDec, которая принимает два аргумента: n - число, которое нужно перевести в систему счисления от 2 до 15, и r - система счисления, в которую нужно перевести. Эта функция создает новую строку s и повторяет следующий цикл:
- s присваивается значение digit[(n mod r)+1] (т.е. берется цифра, которая соответствует остатку от деления n на r, и добавляется в начало строки s).
- Затем n делится на r.
- Пока n не станет равным 0, цикл повторяется.
- В конце функция возвращает значение s.
- Определяется переменная ss, которая представляет собой байт (т.е. она может принимать значения от 0 до 255).
- Задается начальное значение n как $2A.
- Для каждого значения ss от 2 до 15 выполняется следующая последовательность действий:
- Если последняя цифра в числе, переведенном из десятичной системы счисления в систему счисления ss, равна '0', то выводится сообщение
CC
, ss,=
, результат перевода числа n в систему счисления ss.
- Если последняя цифра в числе, переведенном из десятичной системы счисления в систему счисления ss, равна '0', то выводится сообщение
- Программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д