Посчитать в сколько раз в натуральном числе N встретилась цифра M. Циклы с пред- и постусловием - Free Pascal
Формулировка задачи:
В программе должны быть применены операторы repeat,until(по теме).Ну и еще там наверное while...do.
Задание:
Посчитать в сколько раз в натуральном числе N встретилась цифра M
Решение задачи: «Посчитать в сколько раз в натуральном числе N встретилась цифра M. Циклы с пред- и постусловием»
textual
Листинг программы
var
k, m, n : integer;
begin
repeat
write('введите натуральное число: ');
readln(n);
if n <= 0 then writeln('это не натуральное число!')
until n > 0;
repeat
write('выберите цифру которую нужно посчитать: ');
readln(m);
if not (m in [0..9]) then writeln('неверный ввод цифры')
until m in [0..9];
k := 0;
while n <> 0 do
begin
if n mod 10 = m then inc(k);
n := n div 10
end;
writeln(k, ' цифр ', m, ' в данном числе');
readln
end.
Объяснение кода листинга программы
- Вводится натуральное число N.
- Если N меньше или равно нулю, выводится сообщение
это не натуральное число!и программа возвращается к шагу 1. - Вводится цифра M.
- Если M не является цифрой от 0 до 9, выводится сообщение
неверный ввод цифрыи программа возвращается к шагу 3. - M считается количество раз, которое встречается в числе N.
- N делится на 10 и остаток от деления присваивается M.
- N делится на 10 и остаток от деления присваивается M.
- Этот процесс повторяется до тех пор, пока N не станет равным нулю.
- Выводится количество M, которое встречается в числе N.
- Программа завершается.