Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.12.2010, 14:55   #1
anamnesis
 
Регистрация: 19.12.2010
Сообщений: 6
По умолчанию Работа со строкой.

Здравствуйте, помогите разобраться с этой программой.
"Ввести строку, состоящую из нескольких предложений. Построить результирующую строку, содержащую только предложения, в которых отсутствуют запятые."
anamnesis вне форума Ответить с цитированием
Старый 19.12.2010, 15:19   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

И в чем сложности?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.12.2010, 15:45   #3
anamnesis
 
Регистрация: 19.12.2010
Сообщений: 6
По умолчанию

Сложность в поиске запятых и переписывании в новую строку.
anamnesis вне форума Ответить с цитированием
Старый 19.12.2010, 15:50   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Загляни сюда:http://www.programmersforum.ru/showt...369#post398369
Здесь парсинг строки на массив слов, а ты вместо пробела поставь точку, чтоб получился массив предложений.
а после по элементам массива циклом с функцией pos, в которой задай запятую как символ, который нужно искать пройдись.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.12.2010, 16:54   #5
anamnesis
 
Регистрация: 19.12.2010
Сообщений: 6
По умолчанию

Спасибо, получилось что-то вроде этого, всё вроде работает.
Вот только интересно можно ли упростить, или это самый минимум?)
Код:
program lab19;
var s:string; a:array[1..100] of string; i,count:integer;
begin
writeln('enter s');
readln(s);
count:=1;
i:=1;
while i<length(s) do
begin
a[count]:=a[count]+s[i];
if s[i]='.' then begin inc(count); inc(i); end;
inc(i);
end;
for i:=1 to count do
if pos(',',a[i])=0 then writeln(a[i]);
end.
anamnesis вне форума Ответить с цитированием
Старый 19.12.2010, 18:16   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
можно ли упростить
Ну если начать упрощать одноклеточное что же останется на десерт?
Да и зачем? сравни свою программу с ОС Windows. И подумай что из них стоит упростить
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа со строкой mansp Общие вопросы C/C++ 1 15.11.2010 23:19
работа со строкой Андрей.12 Помощь студентам 1 15.02.2010 09:14
Работа со строкой!!! APTEMUC Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 18.01.2010 00:22
Работа со строкой s2dentishe Общие вопросы Delphi 6 05.12.2009 15:09
работа со строкой. D_E_N Общие вопросы Delphi 4 25.10.2009 16:19