Описать процедуру DigitCount(K,C), находящую C — количество цифр целого положительного...

0 голосов
159 просмотров

Описать процедуру DigitCount(K,C), находящую C — количество цифр целого положительного числа K (K — входной, C — выходной параметры целого типа). С помощью этой процедуры найти и напечатать количество цифр для каждого из пяти данных чисел. Формат входных данных На вход программе подается 5 натуральных чисел, каждое из которых записано в отдельной строке. Числа не превосходят 2×109 и не содержат ведущих нулей. Формат выходных данных Требуется вывести 5 чисел — для каждого числа количество его цифр. Примеры входные данные выходные данные 12 234 456 4 12333 2 3 3 1 5


Информатика (26 баллов) | 159 просмотров
Дан 1 ответ
0 голосов

Алгоритм решения

Пока текущее число больше нуля, увеличиваем счётчик количества цифр и отбрасываем последнюю цифру.


Код (Pascal)

var

 x, i, ans: integer;


procedure DigitCount(k: integer; var c: integer);

begin

 c := 0;

 while (k > 0) do

 begin

   c := c + 1;

   k := k div 10;

 end

end;


begin

 for i := 1 to 5 do

 begin

   read(x);

   DigitCount(x, ans);

   writeln(ans);

 end;

end.

----------------------------

Файл решения прикреплён (1).


P.S. Условие задачи позволяет свести её решение к нахождению длины каждой из пяти введённых строк. Такой вариант решения тоже прикреплён (2).

(3.7k баллов)