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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.12.2016, 11:46   #1
kiryavolk
 
Регистрация: 15.12.2016
Сообщений: 7
По умолчанию Найти в строке самое короткое и самое длинное слова

Задача Паскаль хитрая задачка...

Найти в строке самое короткое и самое длинное слова(учесть вариант, что их может быть больше 1)

Последний раз редактировалось kiryavolk; 20.12.2016 в 12:05.
kiryavolk вне форума Ответить с цитированием
Старый 20.12.2016, 14:52   #2
Plague
Забанен
Форумчанин Подтвердите свой е-майл
 
Аватар для Plague
 
Регистрация: 01.11.2006
Сообщений: 420
По умолчанию

И в чем хитрость задачи?
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
Plague вне форума Ответить с цитированием
Старый 20.12.2016, 15:26   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

думаю, что для него все задачи "хитрые" и "сложные",
когда не понимаешь, как их решать и что делать, тогда сложно.


kiryavolk, что хитрого в задаче?
что не получается? Чем разделяются слова?


Цитата:
Сообщение от kiryavolk Посмотреть сообщение
учесть вариант, что их может быть больше 1
это можно учитывать так:
вариант 1
либо два прохода по строке - первый находим минимальную/максимальную длину,
второй проход - вывод слов с заданной длиной.

вариант 2
один проход, при нахождении слова максимальной/минимальной длины запоминаем его (добавляем к запомненному, если слово такой длины уже было ранее). Запоминать слова можно как угодно, вплоть до того, что накапливать их в строке.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 25.12.2016, 09:14   #4
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Код:
type tArrs=array of string;

procedure Analiz(s:string; var st:tArrs);
var i,count:integer;
    s1:string;
begin
   count:=0;
   SetLength(st,0);
   While s<>'' do
   begin
      i:=Pos(' ',s);
      If i>0 then
      begin
         s1:=Copy(s,1,i-1);
         Delete(s,1,i);
      end else
      begin
         s1:=s;
         s:='';
      end;
      If s1<>'' then
      begin
         count:=count+1;
         SetLength(st,count);
         st[count-1]:=s1;
      end;
   end;
end;

var s:string;
    st:tArrs;
    i,len1,len2:integer;
begin
   Write('s = ');Readln(s);
   Analiz(s,st);
   len1:=Length(st[Low(st)]);
   len2:=Length(st[Low(st)]);
   For i:=Low(st)+1 to High(st) do
   begin
      If len1>Length(st[i]) then
         len1:=Length(st[i]);
      If len2<Length(st[i]) then
         len2:=Length(st[i]);
   end;
   If len1=len2 then
      Writeln('< все слова равны >') else
      For i:=Low(st) to High(st) do
      begin
         If Length(st[i])=len1 then
            Writeln(st[i]);
         If Length(st[i])=len2 then
            Writeln(st[i]);
      end;
   Readln;
end.
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Старый 28.12.2016, 20:46   #5
Heneken87
Форумчанин
 
Регистрация: 27.04.2012
Сообщений: 219
По умолчанию

Никто и не заметит что списал...xD
Пишу много и развернуто

Последний раз редактировалось Heneken87; 28.12.2016 в 20:49.
Heneken87 вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В заданной строке текста выведите самое короткое (длинное) слово. Учтите, что таких слов может быть несколько. Удалите (удвойте) эти слова.(PascalABCNET) FlayGlam Помощь студентам 0 03.12.2016 09:58
Требуется помощь в доработке программы для работы с файлами(PASCAL): Определить самое длинное и самое короткое слова предложения DimzNOVIchok45 Помощь студентам 0 13.12.2014 15:02
С# найти самое длинное и самое короткое слово в строке и вывести их Зеленый Чай Помощь студентам 4 06.01.2012 18:40
Найти самое короткое и длинное слова и указать позиции на паскале Klik_1602 Помощь студентам 6 04.01.2011 19:39
заменить самое длинное слово, на самое короткое в Delphi сер4ей Помощь студентам 5 05.03.2009 18:40