Для заданного натурального числа определить, сколько раз в его записи встречается каждая из цифр - Pascal ABC
Формулировка задачи:
Для заданного натурального числа определить, сколько раз в его записи встречается каждая из цифр. (Паскаль и Бейсик)
Помогите :С
Решение задачи: «Для заданного натурального числа определить, сколько раз в его записи встречается каждая из цифр»
textual
Листинг программы
var a:array[0..9] of integer; b, i, c:integer; begin writeln('Введите натуральное число'); readln(b); while b > 0 do begin c:=b mod 10; b:=b div 10; inc(a[c]); end; for i:=0 to 9 do writeln('Цифра ',i,' встречается ',a[i],' раз'); end.
Объяснение кода листинга программы
В данном коде на языке Pascal ABC происходит следующее:
- Создается переменная
a
, которая представляет собой массив целых чисел размером от 0 до 9. - Выводится сообщение «Введите натуральное число», после чего считывается значение переменной
b
с помощью функцииreadln()
. - Запускается цикл
while
, который выполняется до тех пор, пока значение переменнойb
больше нуля. - Внутри цикла происходит следующее:
- Переменная
c
инициализируется значением остатка от деленияb
на 10 с помощью оператора%
. - Переменная
b
делитcя на 10 с помощью оператораdiv
. - Переменная
a[c]
увеличивается на единицу с помощью функцииinc()
.
- Переменная
- После выхода из цикла
while
выводится сообщение «Цифра 0 встречается 0 раз», «Цифра 1 встречается 1 раз», и так далее, для каждого элемента массиваa
. Таким образом, данный код позволяет определить, сколько раз в записи заданного натурального числа встречаются каждая из цифр от 0 до 9.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д