Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > C++ > Общие вопросы C/C++
Регистрация

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


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 20.04.2007, 22:13   #1
k0z7_g0b1in
 
Регистрация: 20.04.2007
Сообщений: 9
Репутация: 10
По умолчанию С++ Найти самое длинное слово строки

Написать консольную программу. Пользователем вводиться строка, найти и вывести самое длинное слово.
Заранее спасибо.
k0z7_g0b1in вне форума   Ответить с цитированием
Старый 21.04.2007, 16:03   #2
ATL
Форумчанин
 
Аватар для ATL
 
Регистрация: 26.01.2007
Адрес: Одесса
Сообщений: 278
Репутация: 122

icq: 602960
По умолчанию

С++ не знаю, а в паскале её можно сделать так:
Код:
Program xx;
uses crt;
var s,j: string;
    p,w:integer;
begin;
      clrscr;
Write ('Введите строку: ');
Readln (s);

p:=pos (' ',s);
j:=copy (s,1,p-1);
Delete (s,1,p);
w:=length (j);
p:=length (s);

if p>w then
write ('Самое длинное слово: ', s)
else
write ('Самое длинное слово: ', j);
readln;
end.
Расчитана на 2 слова с строки. Если больше слов в строке надо - просто добавь цикл.
ATL вне форума   Ответить с цитированием
Старый 22.04.2007, 00:24   #3
merax
Участник клуба
 
Регистрация: 27.12.2006
Сообщений: 955
Репутация: 547
По умолчанию

Уж извините пока занят так, что примите то, что есть, если надо больше, то попозднее.

Код:
#include <iostream.h>
#include <conio.h>
#include <string.h>
int main()
{
   char str[1000];
   //curlen - текущая длина слова
   //maxlen - максимальная длина слова
   //index - индекс, соответствующий позиции
   //конца самого длинного слова +1
int curlen = 0, maxlen = 0, index = 0, i;
  cout << " Input line: ";
    cin >> str;
 for(i=0;;i++)
   {
     if(str[i]==' '|| str[i]=='\0'){
         if(curlen>maxlen){
           maxlen = curlen;
             index = i;
         }
         //если конец строки -> выйти из цикла
         if(str[i]=='\0')break;
         curlen = 0;
      }
      else curlen++;
   }
cout << "" << maxlen;
   getch ();
   return 0;
}
merax вне форума   Ответить с цитированием
Старый 22.04.2007, 17:37   #4
k0z7_g0b1in
 
Регистрация: 20.04.2007
Сообщений: 9
Репутация: 10
Хорошо

Спасибо большое!
k0z7_g0b1in вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
в текстовом файле в каждой строке наити самое длинное слово Storm Помощь студентам 4 04.06.2008 15:56
Как найти слово в тексте ? geniy Паскаль 2 03.02.2008 22:37
Определить сколько раз встречается в тексте самое короткое слово - Delphi 7 Леди Уинтер Помощь студентам 3 08.01.2008 18:56
Как удалить слово из строки? Ellita Общие вопросы C/C++ 7 19.09.2007 15:43


14:59.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru