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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.12.2010, 17:24   #1
Legky
Пользователь
 
Регистрация: 09.12.2010
Сообщений: 19
По умолчанию Обработка символьных строк (данных типа String).

Дано строку символов, который состоит из отдельных слов, разделенных интервалом. Вывести на печать все слова строки, содержащие четное число букв. (String, еще раз напоминаю).

Если не трудно, напишите прог-у. Заранее благодарен.
Буду вдвойне благодарен, если программа будет с подсказками (то есть ход решения про-ги). Желательно написать программу попроще, без сложных элементов.
Legky вне форума Ответить с цитированием
Старый 12.12.2010, 17:26   #2
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

еще раз напоминаю язык то указывайте)
Цитата:
Буду вдвойне благодарен, если программа будет с подсказками. Желательно написать программу попроще, без сложных элементов.
как с деньгами)
Цитата:
Извините, денег пока нет)
ну тогда - попытки решения есть7
вот для затравки
Код:
s:=edit1.text;
s:=trim(s);
s:=s+' ';
while pos('  ',s)<>0 do
delete(s,pos('  ',s),1);
while pos(' ',s)<>0 do begin
s1:=copy(s,1,pos(' ',s)-1);
if not odd(length(s1)) then label1.Caption:=label1.Caption+s1+#13#10;
delete(s,1,pos(' ',s));
end;
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 12.12.2010 в 17:38.
Mad_Cat вне форума Ответить с цитированием
Старый 12.12.2010, 17:28   #3
Legky
Пользователь
 
Регистрация: 09.12.2010
Сообщений: 19
По умолчанию

если нуб в программировании правильно понял ваш вопрос, то программу надо надо написать в Borland Delphi. Язык программирования Pascal.

Извините, денег пока нет)

Код:
procedure TForm1.Button1Click(Sender: TObject);
var s,str:string; i:integer;
const n=[',',' ','.',#13,#10,'!','?'];
begin
str:=edit1.Text;
for i:=1 to length(str)-1 do
if not (str[i] in n) then
s:=s+str[i] else
if length(s)>0 then  begin
if length(s) mod 2 =0 then
label1.Caption:=label1.Caption+s+#13#10;
s:='';
end;
end;
дело в том, что этот отрывок из программы слишком сложный для моего понимания. Ничего не понятно, вот я и ищу добрых людей которые помогут мне с этой проблемой.

Последний раз редактировалось Stilet; 12.12.2010 в 20:33.
Legky вне форума Ответить с цитированием
Старый 12.12.2010, 17:44   #4
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);
var s,str:string; i:integer;
const n=[',',' ','.',#13,#10,'!','?'];// разделители
begin
str:=edit1.Text;// исходная строка
for i:=1 to length(str)-1 do // цикл по строке
if not (str[i] in n) then // если тек символ не разделитель
s:=s+str[i]  //  прибавляем его к слову
else  // иначе
if length(s)>0 then  begin // если длина слова >0 
if length(s) mod 2 =0 then   // и если она четная 
label1.Caption:=label1.Caption+s+#13#10;// выводим слово в label
s:=''; // начинаем новое слово
end;
end;
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 12.12.2010, 17:49   #5
Legky
Пользователь
 
Регистрация: 09.12.2010
Сообщений: 19
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
Код:
procedure TForm1.Button1Click(Sender: TObject);
var s,str:string; i:integer;
const n=[',',' ','.',#13,#10,'!','?'];// разделители
begin
str:=edit1.Text;// исходная строка
for i:=1 to length(str)-1 do // цикл по строке
if not (str[i] in n) then // если тек символ не разделитель
s:=s+str[i]  //  прибавляем его к слову
else  // иначе
if length(s)>0 then  begin // если длина слова >0 
if length(s) mod 2 =0 then   // и если она четная 
label1.Caption:=label1.Caption+s+#13#10;// выводим слово в label
s:=''; // начинаем новое слово
end;
end;
спасибо большое)
Legky вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка данных типа String Wasin_Andrey Помощь студентам 1 10.09.2010 18:02
Обработка символьных данных Normand Паскаль, Turbo Pascal, PascalABC.NET 6 13.04.2009 17:32
подкоректировать.обработка символьных данных и строк felmor Паскаль, Turbo Pascal, PascalABC.NET 1 25.12.2008 19:12