Разделить точками цифры числа группами по три, начиная справа. - Turbo Pascal
Формулировка задачи:
Задача:
Дано натуральное число. Разделите точками цифры этого числа групппами по три, начиная справа.
т.е. 1234567 на вводе
и 12.345.678 на выводе
Я нуб полнейший, так что помогите.
Заранее спасибо
Решение задачи: «Разделить точками цифры числа группами по три, начиная справа.»
textual
Листинг программы
uses crt; var i, l: word; a: integer; s: string; begin write('Введите нужное число: '); readln(a); s := inttostr(a); l := length(s); for i := l downto 1 do begin if (l - i + 1) mod 3 = 0 then insert('.', s, i); end; if s[1] = '.' then delete(s, 1, 1); writeln(s); readln; end.
Объяснение кода листинга программы
- В начале кода используется библиотека crt, которая является стандартной для языка Turbo Pascal.
- Переменные i, l и a объявлены. Переменная i является целым числом, переменная l - словом (целым числом), а переменная a - целым числом.
- Строка s объявлена для хранения результата преобразования числа a в строку.
- Число a считывается с помощью функции readln.
- Строка s формируется путем преобразования числа a в строку с помощью функции inttostr.
- Переменная l инициализируется значением длины строки s.
- Затем происходит цикл for, который выполняется от l до 1, где l - длина строки s, и i - текущий индекс.
- Внутри цикла проверяется, делится ли количество символов в строке s на 3 без остатка. Если это так, то в строку s вставляется точка в позиции i.
- Если первый символ строки s равен точке, то он удаляется с помощью функции delete.
- После выполнения цикла выводится строка s.
- Выполняется чтение ввода с помощью функции readln.