Найти сумму цифр целого числа и записать полученное значение в двоичной системе - PascalABC.NET (251406)

Узнай цену своей работы

Формулировка задачи:

Найти сумму цифр целого числа и записать полученное значение в двоичной системе

Решение задачи: «Найти сумму цифр целого числа и записать полученное значение в двоичной системе»

textual
Листинг программы
var
  a, Sum: integer;
  
begin
  read(a);
  Sum := 0;
  while a <> 0 do begin
    Sum += a mod 10;
    a := a div 10;
  end;
  a := 1;
  while a * 2 <= Sum do
    a *= 2;
  while a <> 0 do begin
    if Sum >= a then begin
      write(1);
      Sum -= a;
    end
    else
      write(0);
    a := a div 2;
  end;
end.

Объяснение кода листинга программы

  1. Переменная a инициализируется значением, которое считывается из стандартного ввода.
  2. Переменная Sum инициализируется значением 0.
  3. В цикле while происходит считывание числа и подсчет суммы его цифр.
  4. Переменная a делится на 10 и остаток от деления добавляется к переменной Sum.
  5. Цикл while выполняется до тех пор, пока число a не станет равным 0.
  6. Переменная Sum присваивается значение 1.
  7. В цикле while происходит деление переменной Sum на 2 до тех пор, пока результат не станет меньше или равным 1.
  8. В цикле while происходит проверка, является ли значение переменной Sum больше или равным значению переменной a. Если это так, то записывается 1, и значение переменной Sum уменьшается на значение переменной a.
  9. Если значение переменной Sum меньше значения переменной a, то записывается 0.
  10. Значение переменной a делится на 2.
  11. Цикл while повторяется до тех пор, пока значение переменной a не станет равным 0.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5
Похожие ответы