Сколько раз встречается заданная цифра в натуральном числе? - Pascal ABC
Формулировка задачи:
Не могу найти ошибку. Программа не считает количество цифр. В чем ошибка?
Решение задачи: «Сколько раз встречается заданная цифра в натуральном числе?»
textual
Листинг программы
function kol(n, k: LongInt): Integer; var c: byte; begin c := 0; while n > 0 do begin if n mod 10 = k then c := c + 1; n := n div 10; end; kol := c; end; var n, k: longint; begin Writeln('Введите натуральное число '); readln(n); Writeln('Введите цифру '); readln(k); writeln('Цифра ', k, ' встречается ', kol(n, k), ' раз в числе ', n); end.
Объяснение кода листинга программы
- В функции
kol
объявлены две переменныеn
иk
, которые представляют собой входные данные для функции. Переменнаяn
представляет собой натуральное число, а переменнаяk
представляет собой заданную цифру. - В цикле
while
переменнойn
присваивается значениеn div 10
, что означает деление числаn
на 10. Это продолжается до тех пор, покаn
больше 0. - Внутри цикла проверяется условие
if n mod 10 = k
. Если это условие истинно, то переменнойc
присваивается значение 1. Это происходит каждый раз, когда в числе встречается заданная цифра. - После завершения цикла
while
значение переменнойkol
присваивается переменнойc
. - В основной части программы пользователю предлагается ввести натуральное число и цифру.
- После ввода данных вызывается функция
kol
. - Результат работы функции выводится на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д