Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 20.12.2015
Сообщений: 2
1

Ввести строку, содержащую несколько слов. Определить самое длинное и самое короткое слово

20.12.2015, 14:21. Показов 1288. Ответов 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
#include <iostream>
#include <cstdlib>
#include <cstring>
using namespace std;
 
int main(int argc, char** argv) 
{
  int i=0,j=0; 
    int a[20] ; 
    char st[200];
    char ch=' ';
    cout<<" string:  ";  gets(st);  cout<<endl;  
while (true)
    {
     while ((st[i]!=ch) and (i<strlen(st)))
     { i++; };
     j++;    a[j-1]=i-1;  i++;
     if (i>strlen(st)) { break; }
    }
string wrd[j];
    int bg=0;
    for (int i=0; i<j; i++)
    {
      for (int k=bg ; k<=a[i]; k++)
      { wrd[i]=wrd[i]+st[k]; }
      bg=a[i]+2;
    }
string mins,maxs;
    int mn=strlen(st),mx=1,tekl;
    for (i=0; i<j; i++)
    {  
       tekl=wrd[i].length(); 
       if (tekl>mx)   {  mx=tekl;  maxs=wrd[i];   }      
       if (tekl<mn)   {  mn=tekl;  mins=wrd[i];   }
    }
cout<<"short word:   "<<mins<<endl; 
    cout<<"long word:   "<<maxs<<endl<<endl;
    system("pause");
    return(0);
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.12.2015, 14:21
Ответы с готовыми решениями:

Ввести строку с клавиатуры. Найти самое длинное слово в строке и самое короткое
Ввести строку с клавиатуры. Найти самое длинное слово в строке и самое короткое. Слова...

Нужно ввести строку и вывести самое длинное и короткое слово
Можно ли вообще записать символы из статической строки в динамическую? Не могу разобраться, как...

С клавиатуры задана строка, состоящая из слов. Поменяйте местами самое длинное и самое короткое слово
Слова разделены пробелами, пробелов может быть несколько.

Сформировать новую строку, расположив в ее начале самое короткое слово, затем самое длинное, и все остальные
Задание такое: В строке символов найти самое длинное и самое короткое слово. Сфор-мировать новую...

2
824 / 627 / 940
Регистрация: 26.06.2015
Сообщений: 1,409
20.12.2015, 19:45 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
#include <iostream>
#include <string>
#include <cctype>
#define is_delim(c)  (isspace((c)) || ispunct((c)))
 
void input_words(std::istream& _in, std::string& minw, std::string& maxw){
    std::string s;
    char c;
    int  e, k = 0;
    
    do {
        _in.get(c);
        e = _in.eof();
        if(is_delim(c) || e){
            if(k){
                if((s.length() < minw.length()) || !minw.length())
                    minw = s;
                if(s.length() > maxw.length())
                    maxw = s;
            }
            s = "";
            k = 0;
        } else {
            k  = 1;
            s += c;
        }
        if(c == '\n' || c == '\r')
            break;
    } while(! e && ! _in.fail());
}
 
int main(void){
    std::string minw, maxw;
    input_words(std::cin, minw, maxw);
    std::cout << "min word: " << minw << std::endl;
    std::cout << "max word: " << maxw << std::endl;
    return 0;
}
Пример работы кода
1
0 / 0 / 0
Регистрация: 20.12.2015
Сообщений: 2
20.12.2015, 20:50  [ТС] 3
Спасибо))
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.12.2015, 20:50

В заданной строке определить самое длинное и самое короткое слово
Ввести несколько строк,каждая из которых содержит некоторое количество слов.В заданной строке...

Дан текст из нескольки строк, определить самое длинное и самое короткое слово
Вот задание: Дан текст из нескольки строк, определить самое длинное и самое короткое слово.... Я...

Найдите самое длинное, и самое короткое слово в заданном предложении
Найдите самое длинное и самое короткое слово в заданном предложении.

Поменять местами в предложении самое длинное и самое короткое слово
Сам код, но тут 12 ошибок выдает в логе: #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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