Вычислить контрольное число данной записи - Pascal ABC

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

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

У меня дано любое число формата x.xxx.xxx. Как вычислить контрольное число этой записи?? Заранее благодарен !

Решение задачи: «Вычислить контрольное число данной записи»

textual
Листинг программы
Function KC(A : Longint) : Byte;
Var
  n1,n2 : Byte;
  fl    : Boolean;
Begin
  n1:=0; n2:=0; Fl:=True;
  While A>0 do
  Begin
    If Fl then n1:=n1+(A mod 10) else n2:=n2+(A mod 10);
    Fl:=not Fl;
    A:=A div 10;
  end;
  n1:=n1*3+n2;
  If n1 mod 10 = 0 then KC:=0 else KC:=10-(n1 mod 10);
end;
 
Begin
  Writeln(KC(1234456));
end.

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

  1. В функции KC объявлены три переменные: n1, n2 и fl. Все они имеют тип byte.
  2. Переменная fl инициализируется значением True. Она будет использоваться для контроля цикла.
  3. Задается начальное значение для переменных n1 и n2, которые равны 0.
  4. Задается начальное значение для переменной fl, которая равна True.
  5. Запускается цикл while, который будет выполняться до тех пор, пока значение переменной A больше 0.
  6. Внутри цикла проверяется условие: если значение переменной fl равно True, то к переменной n1 прибавляется значение A, делённое на 10, иначе к переменной n2 прибавляется значение A, делённое на 10.
  7. После этого меняется значение переменной fl, которое становится противоположным (False).
  8. Значение переменной A делится на 10.
  9. Повторяются шаги 6-8 до тех пор, пока значение переменной A не станет равным 0.
  10. После завершения цикла значение переменной n1 умножается на 3 и к ней прибавляется значение переменной n2.
  11. Затем проверяется, делится ли значение n1 на 10 без остатка. Если да, то значение KC устанавливается в 0, иначе в 10 минус остаток от деления значения n1 на 10.
  12. В конце программы выводится значение KC, которое равно 10.
  13. Конец программы.

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


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

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

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