Посчитать количество каждой введенной цифры отдельно (пять пятерок,три шестерки) - PascalABC.NET
Формулировка задачи:
Дан код,который формирует число из двух заданных чередованием разряда. Например, при вводе 1234 и 5678 программа должна выдать ответ 15263748.
Нужно доработать эту программу,чтоб она считала количество каждой цифры по отдельности (пять пятерок,три тройки). На форуме искал,так и не смог найти,так что прошу помощи... Заранее спасибо,ну очень надо)
Вот сам код,который нужно доработать:
Листинг программы
- program CombineTwoNums;
- var
- c, z: integer;
- a, b: word;
- begin
- readln(a, b);
- c := 0;
- z := 1;
- while a <> 0 do begin
- c := c + z * (b mod 10);
- z := z * 10;
- b := b div 10;
- c := c + z * (a mod 10);
- z := z * 10;
- a := a div 10
- end;
- writeln(c)
- end.
Решение задачи: «Посчитать количество каждой введенной цифры отдельно (пять пятерок,три шестерки)»
textual
Листинг программы
- program CombineTwoNums;
- var
- a,b,c,z:integer;
- m :array[0..9] of byte;
- begin
- readln(a, b);
- c := 0;
- z := 1;
- while a <> 0 do begin
- c := c + z * (b mod 10);
- z := z * 10;
- b := b div 10;
- c := c + z * (a mod 10);
- z := z * 10;
- a := a div 10
- end;
- writeln(c);
- for a:=0 to 9 do
- m[a]:=0;
- while c>0 do
- begin
- inc(m[c mod 10]);
- c:=c div 10;
- end;
- for a:=0 to 9 do
- if m[a]>0 then writeln(a,'=',m[a]);
- end.
Объяснение кода листинга программы
В этом коде выполняется два действия:
- Считываются два числа, одно из которых вводится с клавиатуры, а второе создается как комбинация цифр первого числа.
- Создается массив для подсчета количества каждой цифры введенных чисел.
- Цикл, выполняющийся столько раз, сколько цифр в первом числе. В каждой итерации к сумме прибавляется произведение количества цифр второго числа на текущую цифру первого числа.
- Затем, после разделения первого числа на отдельные цифры, начиная с самой правой, и подсчета их количества, результат выводится на экран.
- В конце выводится количество каждой цифры введенных чисел.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д