Программа определяющая количество цифр в числе

Задача

Какие различные цифры входят в целое число.

Решение

n – анализируемое число;
digits – массив различных цифр, из которых состоит число n;
q_digits – количество цифр в массиве;
digit – извлеченная из числа цифра;
flag – проверка наличия цифры в массиве (если цифра в массиве уже есть, то она не будет в него добавлена.

Алгоритм решения задачи:

  1. Избавляемся от знака числа с помощью функции abs.
  2. Обнуляем количество цифр в массиве (изначально массив пуст).
  3. После извлечения очередной цифры числа с конца ( n mod 10 ) предполагаем, что ее еще нет в массиве ( flag : = false ).
  4. Перебираются элементы массива цифр. Если текущая извлеченная цифра уже есть в нем, то меняем значение флага. Для первой извлеченной цифры данный цикл не работает, что правильно.
  5. Если флаг остался в значении false, то увеличиваем количество цифр в массиве на единицу и записываем очередную цифру в массив.
  6. Избавляемся от последней цифры числа ( n div 10 ).
  7. Цифры в массив записаны в обратном порядке. Для их вывода на экран в порядке следования в числе следует использовать вариант цикла for с downto.

Исходник программы, которая находит количество цифр в числе, введённого пользователем с клавиатуры. Исходник основан на цикле WHILE. Есть пояснительные комментарии к каждой строке. Увидеть исходный код и скачать скомпилированный исходник вы можете ниже.

Исходный код программы для нахождения кол-ва цифр в числе:

Подсчитать количество цифр числа N введенного с клавиатуры.

  • Попроси больше объяснений
  • Следить
  • Отметить нарушение

EvaEva1995 02.11.2017

Что ты хочешь узнать?

Ответ

Проверено экспертом

begin
clrscr;
write(‘Введите число ‘); readln(n);
while n>0 do
begin
n:=n div 10;
i:=i+1;
end;
writeln(‘В введенной числе ‘, i, ‘ цифр’);
end.

  • Комментарии
  • Отметить нарушение
Читайте также:  Цивилизация 5 дипломатическая победа

Ответ

Проверено экспертом

// PascalABC.NET 3.3, сборка 1561 от 02.11.2017
// Внимание! Если программа не работает, обновите версию!

Примеры
-203534243
9