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

В произвольном тексте найти и отпечатать все слова длиной 5 символов - C++

Восстановить пароль Регистрация
 
PsychodeliNoise
0 / 0 / 0
Регистрация: 14.11.2013
Сообщений: 12
12.12.2013, 22:49     В произвольном тексте найти и отпечатать все слова длиной 5 символов #1
Собственно, задача. Если можно, хотелось бы минимум мудрённого кода - простейшие операторы. Ну или с комментариями.

Добавлено через 1 час 35 минут
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
int main()
{
    system("cls");
    setlocale(0, "");
 
    char str[256];
    
    cout << "Введите произвольный текст: "; cin.getline (str, 256);
 
    
    char* ptr = strtok (str, " ");
    int kol = strlen(ptr);
    while (ptr = strtok(NULL, " "))
    {
        if(strlen(ptr)==5)
        kol++;
    }
    cout << "Количество слов длиной из 5 букв: " << kol;
    cout << "\n";
 
    system("PAUSE");
 
    return 0;
 
}
Пока выглядит так. Ясное дело, работает некорректно.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2013, 22:49     В произвольном тексте найти и отпечатать все слова длиной 5 символов
Посмотрите здесь:

C++ Для заданного достаточно длинного слова найти в имеющемся тексте все слова, в которых использованы только буквы, имеющиеся в заданном слове
В пpоизвольном тексте найти и отпечатать все слова длиной 5 символов C++
В произвольном тексте выделить и отпечатать слова, начинающиеся с буквы А. C++
C++ Строки (В произвольном тексте выделить и отпечатать слова, начинающиеся с буквы А)
C++ Найти в тексте и посчитать все слова с двойными согласными
C++ Найти в тексте все слова анаграммы
Найти в тексте все различные слова и число их вхождений C++
C++ Найти все слова в тексте заканчивающиеся согласной буквой

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Doksim
 Аватар для Doksim
57 / 57 / 8
Регистрация: 08.12.2013
Сообщений: 257
12.12.2013, 22:54     В произвольном тексте найти и отпечатать все слова длиной 5 символов #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
#include <iostream>
using namespace std;
 
int main()
{
    int a, c = 0;
    char str[ 100 ], s[ 100 ];
    cin.getline( str, 100 );
    
    for( int i = 0; i < strlen( str ); i++ )
    {
         a = 0;
         strcpy( s, "" );
         for( int j = i, k = 0; str[ j ] != ' ' && str[ j ] != '\0'; j++, k++ )
         {
              a++;
              s[ k ] = str[ j ];
         }
         s[ a ] = '\0';
         
         if( a == 5 )
         {
             cout << s << "\n";
             c++;
         }
    }
    
    cout << "\nWords with five simbols: " << c << endl;
    return system( "pause" );
}
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
12.12.2013, 22:57     В произвольном тексте найти и отпечатать все слова длиной 5 символов #3
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
#include <iostream>
#include <cstring>
 
int main()
{
    const size_t maximalStringLength(255);
    const char *stringDelimeters("!?., ");
 
    char userString[maximalStringLength];
    std::cout << "Input the string: " << std::endl;
    gets_s(userString);
 
    char *buffer(0);
    char *currentWord(strtok_s(userString, stringDelimeters, &buffer));
    std::cout << "Resulting words: " << std::endl;
    while (currentWord) {
        if (strlen(currentWord) == 5)
            std::cout << currentWord << " ";
        currentWord = strtok_s(0, stringDelimeters, &buffer);
    }
 
    std::system("pause");
    return 0;
}
Yandex
Объявления
12.12.2013, 22:57     В произвольном тексте найти и отпечатать все слова длиной 5 символов
Ответ Создать тему
Опции темы

Текущее время: 05:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru