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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.03.2009, 23:38   #1
сер4ей
Пользователь
 
Регистрация: 27.02.2009
Сообщений: 18
По умолчанию Лаба в Delphi

Вот мой код, что мне надо исправить что бы заменить самое длинное слово на самое короткое, в одном Edite, т.е. взять вырезать часть строки до длинного слова и после длинного слова и вставить обратно: до длинного слова+самое короткое слово+после самого длинного слова

procedure TForm1.Button1Click(Sender: TObject);
var s:String; maxw,j,e,r,minr,t,w,q:integer;

begin
s:=Edit1.Text;

j:=1;
maxw:=0;
minr:=0;
r:=1;

while (j<Length(s)) do
begin
while (s[j]=' ') and (j<Length(s)) do j:=j+1;
e:=j;
w:=0;
if (j<length(s)) then
while (s[j]<>' ') and (j<length(s)) do w:=w+1;
if w>maxw then maxw:=w;
end;

while (j<Length(s)) do
begin
while (s[j]=' ') and (j<Length(s)) do t:=t+1;
q:=t;
r:=0;
if (j<length(s)) then
while (s[j]<>' ') and (j<length(s)) do r:=r+1;
if r<minr then minr:=r;
end;
end;
end.
а дальше я не знаю как????
сер4ей вне форума Ответить с цитированием
Старый 07.03.2009, 10:38   #2
сер4ей
Пользователь
 
Регистрация: 27.02.2009
Сообщений: 18
Радость

буду очень благодарен
сер4ей вне форума Ответить с цитированием
Старый 07.03.2009, 11:42   #3
Minotavr_x86
Пользователь
 
Аватар для Minotavr_x86
 
Регистрация: 22.03.2007
Сообщений: 24
По умолчанию

Код:
while (j<Length(s)) do
begin
  while (s[j]=' ') and (j<Length(s)) do j:=j+1;
  e:=j;
  w:=0;
  if (j<length(s)) then
    while (s[j]<>' ') and (j<length(s)) do
      begin
        w:=w+1;
        j:=j+1;
      end;
  if w>maxw then
    begin
      maxfirst:=e; //это номер первого символа
      maxw:=w;
    end;
end;
Минимальное слово по аналогии.
Я бы сделал сначала массив слов, а потом с ними работал.
Не всё получается так, как придумал,
Но разве за это должно быть стыдно!?!
Minotavr_x86 вне форума Ответить с цитированием
Старый 08.03.2009, 13:44   #4
сер4ей
Пользователь
 
Регистрация: 27.02.2009
Сообщений: 18
Восклицание

а как в одном Edite, взять вырезать часть строки до длинного слова и после длинного слова и вставить обратно: до длинного слова+самое короткое слово+после самого длинного слова
сер4ей вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно сделать 2 лабы по Delphi. 250р=1 лаба Reload Помощь студентам 6 30.01.2013 23:21
Лаба по Ассемблеру Rio309 Помощь студентам 13 30.10.2008 00:35
Лаба по массивам DimaG Помощь студентам 19 30.10.2007 08:56