Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];

Вниз

Как найти самое длинное слово в тексте?   Найти похожие ветки 

 
Registered Guest   (2005-01-11 09:39) [0]

Задание вроде простое, но у меня не получается. Дан текст, в котором следует найти самое длинное слово (и вывести его). Как это сделать? Нужен пример программного кода. Best Regards...


 
Kerk ©   (2005-01-11 09:41) [1]

свое домашнее задание ты должен сделать сам


 
Александр Иванов ©   (2005-01-11 09:49) [2]

index = 1;
MaxWord:="";
repeat
substr := "";
while (Str[index] = " ")  or (index<=length(Str)) do inc(index);
while (Str[index] <> " ") or (index<=length(Str)) do
 begin
  substr := substr+Str[index];
  inc(index);
 end;
if Length(substr) > Length(MaxWord) then
 begin
  MaxWord:=substr;
 end;
until index>length(Str);


 
KSergey ©   (2005-01-11 09:50) [3]

> Registered Guest   (11.01.05 09:39)
> Задание вроде простое, но у меня не получается.

Привели что ты делаешь и уажи место где именно не получается.

> Нужен пример программного кода. Best Regards...

Сумма?


 
Fay ©   (2005-01-11 10:12) [4]

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


 
TUser ©   (2005-01-11 10:21) [5]


> Александр Иванов ©   (11.01.05 09:49) [2]

А запятые, числа и пр.? Кстати, интересный вопрос, "что-то" - это одно слово или два?

program GetMaxWord;

var S: string;
 buf: string;
 res: string;
   i: integer;

begin
 readln(S);
 S:=S+" "; buf:=""; res:="";
 for i:=1 to length(S) do
   if S[i] in ["A".."Z","a".."z","а".."я","А".."Я"] then
     buf:=buf+S[i]
     else begin
     if length(buf) > length(res) then
       res:=buf;
     buf:="";
     end;      
end.


 
Семен Сорокин ©   (2005-01-11 10:31) [6]

во еще вариант на рассмотрение :))

var
 _text: string;
 _i: integer;
begin
with TStringList.Create do
 try
  Delimiter := " ";
  DelimitedText := _text;
  _text := EmptyStr;
  for _i := 0 to Count-1 do
   if Length(_text) < Length(Trim(Strings[_i])) then
    _text := Trim(Strings[_i])
 finally
  Free
 end
end;


 
ЮЮ ©   (2005-01-11 10:33) [7]

>Семен Сорокин ©   (11.01.05 10:31) [6]
Trim, пожалуй, лишнее


 
Семен Сорокин ©   (2005-01-11 10:36) [8]


> ЮЮ ©   (11.01.05 10:33) [7]

это на случай #10 #13 хотя может и лишнее :)



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.038 c
14-1104906582
syte_ser78
2005-01-05 09:29
2005.01.23
емейлы харьковских компьютерных фирм


8-1097613042
AKA
2004-10-13 00:30
2005.01.23
BMP to ICO


14-1104822935
syte_ser78
2005-01-04 10:15
2005.01.23
Как я провел выходные (продолжение)


4-1101974919
Андрюша
2004-12-02 11:08
2005.01.23
Как можно отловить системные клавиши?


1-1105482753
Creating
2005-01-12 01:32
2005.01.23
В каком месте лучшe ставить inherited ? До своего кода, после





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский