Описать функцию подсчета количества цифр в числе - PascalABC.NET
Формулировка задачи:
Описать функцию DigitCount(К) целого типа, находящую количество цифр целого
положительного числа К. Используя эту функцию, сформировать массив В, каждый
элемент которого равен количеству цифр соответствующего элемента массива А
размера N.
Входной файл может быть произвольным
Есть небольшие наработки, не могу понять как сделать что бы количество цифр выводилось в другой массив
Решение задачи: «Описать функцию подсчета количества цифр в числе»
textual
Листинг программы
const
MaxCount = 200;
type
T_number = integer;
T_elem = integer;
T_size = 1..MaxCount;
T_mas = array [T_size] of T_elem;
///Нахождение количества цифр в элементе массива
function DigitCount(k: longint): byte;
var
n: longint;
s: byte;
begin
n := abs(k);
s := 0;
while n > 10 do
begin
n := n div 10;
s := s + 1
end;
DigitCount := s + 1
end;
///Чтение из файла массива А размерностью n
procedure input_output_mas(var A, B: T_mas; var Rmas: T_size);
begin
assign(input, 'input.txt');
Rmas := 0;
while not eof(input) do
begin
inc(rmas); //текущая размерность массива
read(A[rmas]);
write(A[rmas], ' ');
writeln('Колличество чисел = ', digitCount(a[rmas]));
B[rmas] := digitCount(a[rmas]);
end;
close(input);
assign(output, 'output.txt');
for var i := 1 to rmas do
write(output, b[i]:3);
close(output);
writeln('************************');
writeln(' НОВЫЙ МАССИВ');
writeln('************************');
for var i := 1 to rmas do
write(b[i]:3);
end;
var
A, B: T_mas; //исходный массив
Rmas: T_size;//кол-во элементов
num: T_number;
begin
writeln('Исходный массив: ');
input_output_mas(a, b, Rmas);
writeln();
end.
Объяснение кода листинга программы
- Объявляются константы и типы данных для задачи.
- Функция DigitCount(k: longint): byte; отвечает за подсчет количества цифр в числе k.
- Функция input_output_mas(var A, B: T_mas; var Rmas: T_size) отвечает за чтение из файла массива А размерностью n, подсчет количества цифр в каждом числе и запись в файл output.txt.
- Создаются и инициализируются переменные A, B, Rmas и num типа T_mas, T_number, T_size.
- Выводится сообщение об исходном массиве.
- Вызывается функция input_output_mas(a, b, Rmas); для чтения из файла input.txt и записи в файл output.txt.
- Выводится сообщение о новом массиве, созданном на основе данных из файла output.txt.
- Задачу можно считать решенной.