Задать вопрос
kan3k1k3n
@kan3k1k3n

Как объяснить программу по переводу двоичного числа в восьмеричное?

у меня есть код, в котором я одним большим выражением перевожу двоичное число в воьмеричное:
var a,x: integer;
begin
readln(x);
a:=(x div 10000*16) + ((x div 100*10 - x div 1000*10)div 1000*8)+((x div 100*100 - x div 1000*1000)div 100*4)+((x div 10*10 - x div 100*100)div 10*2)+(x - x div 10*10); // преобразование числа x из десятичной системы счисления в восьмеричную. Это происходит путем разложения числа на разряды и их последующего преобразования в восьмеричный вид.
writeln((a div 8).ToString+(a mod 8).ToString);
end.

мне нужно объяснить, как она работает, что за что отвечает (мне помогал другой человек, поэтому, я сам не писал программу)
  • Вопрос задан
  • 45 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
HemulGM
@HemulGM
Delphi Developer, сис. админ
Происходит путем разложения числа на разряды и их последующего преобразования в восьмеричный вид.
Ответ написан
Комментировать
ZERGeich
@ZERGeich
Число делится на разряды, преобразуются в восьмеричный вид и потом результат складывается.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы