Помощь - Поиск - Пользователи - Календарь
Полная версия: Строковый тип
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
maxwell
Преобразовать строку таким образом, чтобы цифры каждого слова были перенесены в начало слова, изменив порядок следования цифр в слове на обратный. Без встроенных функций. Большое спасибо.
Федосеев Павел
Спасибо за доверие!
А что вы уже успели сделать?
maxwell
Цитата(Федосеев Павел @ 14.10.2016 3:03) *

Спасибо за доверие!
А что вы уже успели сделать?

В том то и дело, что ничего. Сейчас поступил в университет и ничего не понимаю в программировании, а лабораторные сдавать надо. По готовому коду долго, но разбираюсь. Спасибо за понимание.
Федосеев Павел
Попробуйте начать. По конкретным вопросам постараюсь помочь.
maxwell
Цитата(Федосеев Павел @ 14.10.2016 3:34) *

Попробуйте начать. По конкретным вопросам постараюсь помочь.

если бы я не пробовал, то я бы не писал сюда
Федосеев Павел
Это же здорово! Покажите, что получилось, что не получилось.

Вот смотрите, должно получиться следующее.
1. цикл, пока можно выделять слова из строки.
1.2. выделяете слово (т.е. находите индексы начала и конца слова в строке)
1.3. это для отладки - печать слова writeln(copy(s, StartIndex, FinishIndex-StartIndex+1)

Следующим этапом будет обработка слова вместо его отладочной печати.

Выделить слово можно так - в два этапа:
1. пропускаем все разделители (пробелы) в строке while s[i]=' ' do inc(i);
2. запоминаем StartIndex:=i
3. Пропускаем все буквы слова while s[i]<>' ' do inc(i);
4. запоминаем FinishIndex:=i-1
Сюда надо добавить условия для исключения выхода значения i за размер строки.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.