Описать функцию digist(n), подсчитывающую количество различных цифр в десятичной записи натурального числа - PascalABC.NET
Формулировка задачи:
Описать функцию digist(n), подсчитывающую количество различных (значащих) цифр в десятичной записи натурального числа n.
Решение задачи: «Описать функцию digist(n), подсчитывающую количество различных цифр в десятичной записи натурального числа»
textual
Листинг программы
function digits(n:int64):byte;
begin
result:=0;
while n>0 do
begin
n:=n div 10;
inc(result);
end;
end;
var n:int64;
begin
write('n=');
readln(n);
write('Количество цифр=',digits(n))
end.
Объяснение кода листинга программы
- Задана функция digist(n), которая принимает целочисленный аргумент n и возвращает количество цифр в десятичной записи числа n.
- В функции используется цикл while, который выполняется до тех пор, пока n больше 0.
- Внутри цикла n делится на 10 и результат записывается в переменную n.
- Каждый раз при выполнении цикла увеличивается значение переменной result на 1.
- В основной программе объявлена переменная n типа int64.
- Вводится значение переменной n с помощью функции readln().
- Вызывается функция digits() с аргументом n.
- Результат вызова функции digits() выводится на экран с помощью функции write().