Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Vitek4
16 / 16 / 0
Регистрация: 16.04.2010
Сообщений: 162
#1

Максимальное слово - C++

30.01.2014, 17:07. Просмотров 273. Ответов 4
Метки нет (Все метки)

В строке, состоящей из слов и знаков препинания (пробел . : , ! ?-, найти слово максимальной длины;
Программа должна обрабатывать любое количество вариантов данных.
Добрый вечер помогите пожалуйста решить эту задачу. Очень срочно нужно.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.01.2014, 17:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Максимальное слово (C++):

Максимальное слово в строке - C++
Всем привет! Не получается вывести максимальное слово в строке. Функцию strtok использовать нельзя! #include "stdafx.h" #include...

Найти максимальное слово в строке - C++
Программа правильно определяет длину слов, но почему-то она проверяет только первое слово, но дальше по строке не идет. Причем, если убрать...

Считать из файла и поменять местами максимальное и минимальное слово - C++
помогите дописать задачу...нужно считать из файли и поменять местами максимальное и минимальное слово...я поменять не могу... вот мой код ...

Найти слово, один и тот же символ в котором встречается максимальное число раз - C++
длина входной строки не превосходит 300 символов, она вводится с консоли. Вам необходимо вывести на консоль либо преобразованную строку,...

Найти слово, один и тот же символ в котором встречается максимальное число раз (в рамках всей строки). - C++
Помогите пожалуйста! Строка состоит из слов, разделенных одним или несколькими пробелами.(может начинаться несколькими пробелами и...

Найти слово, один и тот же символ в котором встречается максимальное число раз (в рамках всей строки) - C++
состоит из слов, разделенных одним или несколькими пробелами. Найти слово, один и тот же символ в котором встречается максимальное число...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
maria_
5 / 5 / 1
Регистрация: 25.08.2013
Сообщений: 67
30.01.2014, 17:33 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include<iostream>
 
using namespace std;
 
int main()
{
  int maxlen = 0;
  char* result;
  char* maxresult;
  result = (char*)malloc(100*sizeof(char));
  maxresult = (char*)malloc(100*sizeof(char));
  int len = 0;
  char c= ' ';
  while ('\n' != c)
  {
    c = getchar();
    if ( ( ' ' != c ) && ( '\n' != c ) )
    {
      result[len] = c;
      ++len;
    }
    else
    {
      if(maxlen < len)
      {
        maxlen = len;
        for (int j=0; j < len; ++j)
        {
          maxresult[j] = result[j];
        }
      }
      len = 0;
    }
  }
  for (int i = 0; i < maxlen; ++i )
  {
    cout << maxresult[i];
  }
  cout << endl;
  return 0;
}
1
Dekio
Фрилансер
Эксперт С++
5837 / 1218 / 214
Регистрация: 23.11.2010
Сообщений: 3,378
Записей в блоге: 1
30.01.2014, 17:38 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <string.h>
 
char *getMaxWord(char *string, const char *delims)
{
    char *pWord = strtok(string, delims);
    if (pWord) {
        char *pOtherWord = getMaxWord(0, delims);
        if (pOtherWord && strlen(pOtherWord) > strlen(pWord))
            pWord = pOtherWord;
    }
    return pWord;
}
 
int main()
{
    const char *delims = " .,;?!:[]";
    char string[128];
    gets(string);
    printf("Word with max len: %s\n", getMaxWord(string, delims));
    return 0;
}
1
vovacreme
-16 / 61 / 13
Регистрация: 14.01.2014
Сообщений: 145
30.01.2014, 17:48 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <sstream>
 
int main()
{
    std::string st, tmp_word, max_word;
    std::cout << "enter string: ";
    getline(std::cin, st);
    std::istringstream ist(st);
    while (ist >> tmp_word)
    {
        if (tmp_word.size() >= max_word.size())
            max_word = tmp_word;
    }
    std::cout << max_word << std::endl;;
    system("pause");
}
1
Vitek4
16 / 16 / 0
Регистрация: 16.04.2010
Сообщений: 162
30.01.2014, 17:55  [ТС] #5
Всем спасибо но уже разобрался малость. И с вою написал.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.01.2014, 17:55
Привет! Вот еще темы с ответами:

В тексте заменить слово А(любое слово) на слово В(любое слово). А и В разной длинны - C++
Не могу сообразить как написать программу: Пользователь вводит текст Необходимо замениь слово А(любое слово) на слово В(любое...

Заменить заданное слово в тексте, находящемся в заданном файле, на другое слово. - C++
Заменить заданное слово в тексте, находящемся в заданном файле, на другое слово.

Ввести строку и слово. Вставить введенное слово за пятым словом в строке - C++
Помогите ребят. Нужно написать программу на С++ без использования библиотек &lt;ctype.h&gt;, &lt;string.h&gt; или &lt;stdlib.h&gt;. Ввести строку и...

Найти в файле слово по заданному началу, вывести слово и его позицию - C++
Найти в файле слово по заданному началу, вывести слово и его позицию


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
30.01.2014, 17:55
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru