Помощь - Поиск - Пользователи - Календарь
Полная версия: Разбиение числа в текстовом файле
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Lazy
Здравствуйте! Помогите, пожалуйста, уже 3 дня билась над простым вопросом, но не получается. В текстовом файле необходимо найти числа и разбить их в группы по три, начиная справа... Например если число 1234567, то записать его надо 1 234 567. Найти-то я нашла, а вот разбить не получается. Помогите, плиз, буду очень благодарна
volvo
Разбить именно в самой строке или при выводе на печать?

Кстати, если ты нашла число, то как именно ты знаешь, что в строке S есть число? Ты знаешь его начало/конец или выделяешь в отдельную строку?
Lapp
Допустим, в строке s лежит произвольный набор символов (в частности, целое число). Следующая последовательность операторов вставляет пробелы через три символа, начиная справа.

i:=Length(s)-2;
while i>1 do begin
Insert(' ',s,i);
Dec(i,3);
end;


О том, чтобы строка не переполнилась, позаботься сама.
Lazy
Volvo,я с начала слова и до следующего пробела проверяю, является ли символ цифрой. Lapp, спасибо большое, очень помог!
volvo
А что, готовыми методами выделения слова из строки (заодно проверяя, состоит ли слово только из цифр), воспользоваться нельзя? Этому ведь посвящена специальная тема (прикрепленная) в разделе "Задачи"...

А потом пройти от последнего слова к первому и проделать приблизительно то, что посоветовал lapp...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.