IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Текст, порубить на 40-символьные строки
_JC_
сообщение 13.10.2005 13:45
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 12
Пол: Мужской
Реальное имя: Макс

Репутация: -  0  +


Помогите решить задачку!
Дано: текст на русском языке.
Задане: переформатировать текст так, чтобы длина любой строки не превосходила 40 символов.(Выравнивать по правому краю не требуется).
Спасибо заранее!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 14.10.2005 22:34
Сообщение #2


Гость






_JC_, приводим задачу к уже решенной :D :
uses crt;

const
maxLen = 40;
delimit = [' ', '.', ','];
var
s, T: string;
ch: char;

f: text;

begin
assign(f, 'text.txt');
reset(f);

s := '';
while not eof(f) do begin

read(f, ch);
write(ch);
s := s + ch;

if length(s) = maxLen then begin
T := '';
while not (s[length(s)] in delimit) do begin
T := s[length(s)] + T;
delete(s, length(s), 1);
gotoxy(wherex - 1, wherey); clreol;
end;
s := T;
writeln;
write(s);

end;

end;
close(f);
end.


P.S. Это будет работать, когда весь текст забит в файле в одну строку. Если есть символы #13 (перевод строки), то нужно будет их соответствующим образом обрабатывать... Тестировалось на файле:
Цитата
start finish end begin end begin start finish end begin end begin start finish end begin end begin start finish end begin end begin
 К началу страницы 
+ Ответить 

Сообщений в этой теме
_JC_   Текст   13.10.2005 13:45
volvo   _JC_, поиском пользоваться когда-нибудь будем? :a...   13.10.2005 14:24
Shura   Думаю, можно сделать так: Открываем исходный файл ...   13.10.2005 14:27
_JC_   Спасибо большое прости что не воспользовался поиск...   13.10.2005 15:09
klem4   объяви s : string, больше сорока ты в нее не запиш...   13.10.2005 15:23
volvo   klem4, а проверять на нажатие "расширенной...   13.10.2005 15:45
klem4   исправил вроде :unsure:   13.10.2005 15:54
_JC_   А почему каждый символ воспринимается только со 2-...   13.10.2005 16:01
klem4   не заню, у меня воспринимает с первого нажатия н...   13.10.2005 16:06
volvo   Вот так: uses crt; const maxLen = 40; delimi...   13.10.2005 17:10
_JC_   Volvo мщжет ты мне подскажешькак мне сделать эту з...   13.10.2005 16:07
klem4   и как ты себе это представляешь при твоей постан...   13.10.2005 16:09
_JC_   Да вероятно ты прав извини!   13.10.2005 16:35
_JC_   Извиняюсь за то что беспокою, но этот Му.....ЖИК с...   14.10.2005 22:22
volvo   _JC_, приводим задачу к уже решенной :D : uses cr...   14.10.2005 22:34


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 12.08.2025 8:46
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"