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

Подсчет количества слов в тексте, которые заканчиваются на гласную букву

07.11.2018, 17:20. Показов 432. Ответов 0
Метки нет (Все метки)

С клавиатуры вводится текстовый рядок. Написать программу, которая подсчитывает ко-во слов в тексте, которые заканчиваются на гласную букву; выводит все слова, длина которых меньше 5 символов; удаляет все слова, которые имеют хотя бы 1 латинскую букву. Прошу помощи.

Желательно не использовать много библиотек.

Добавлено через 17 минут
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#include <iostream>
#include <sstream>
#include <string>
#include <stdlib.h>
#include <vector>
#include <locale.h>
#include <windows.h>
using namespace std;
bool bas(char c)
{
    switch(c)
    {
        case 'e':
        case 'y':
        case 'u':
        case 'i':
        case 'o':
        case 'a':
 
        case 'у':
        case 'ы':
        case 'а':
        case 'о':
        case 'э':
        case 'я':
        case 'и':
        case 'ю':
        case 'ё':
        case 'е':
            return true;
        default:
            return false;
    }
}
 
int main()
{
    string str, word;
    getline(std::cin, str);
 
    char* lpBuff = new char[str.size() + 7];
    OemToCharA(str.data(), lpBuff);
    str = lpBuff;
 
    std::istringstream iss(str);
    int good = 0;
    std::vector<std::string> v;
    std::string strwolatin = "";
    while(!iss.eof())
    {
        iss >> word;
        if(bas(word[word.size() - 1])) good++;
        if(word.size() < 5) v.push_back(word);
 
        for(size_t i = 0; i < word.size(); i++)
        {
            if(word[i] >= 'a' && word[i] <= 'z') goto l1;
            if(word[i] >= 'A' && word[i] <= 'Z') goto l1;
        }
        strwolatin += word + " ";
        l1:;
    }
 
    setlocale(LC_ALL, "Russian");
    std::cout << "Количество слов в тексте, которые заканчиваются на гласную букву: " << good << std::endl;
    std::cout << "Все слова, длина которых меньше 5 символов:" << std::endl;
    for(size_t i = 0; i < v.size(); i++) std::cout << "  " << v[i] << std::endl;
    std::cout << "Текст без слов, которые имеют хотя бы 1 латинскую букву: " << strwolatin << std::endl;
 
    return 0;
}
Этот код нужно упростить
0

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

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.11.2018, 17:20
Ответы с готовыми решениями:

Подсчитать количество слов в тексте, которые заканчиваются на гласную букву
С клавиатуры вводится текстовый рядок. Написать программу, которая подсчитывает ко-во слов в...

Строка: Подсчитать количество слов в тексте, которые заканчиваются на гласную букву...
Оформить каждый пункт задачи выбранного варианта в виде функции. Все необходимые данные для функций...

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

Подсчитать количество слов в тексте, которые заканчиваются на гласную букву
С клавиатуры вводится строка. Разработать программу, которая реализует указанные действия. а)...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.11.2018, 17:20

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

Определить, каких слов в тексте больше: которые начинаются на гласную или на согласную букву?
В файле записано стихотворение (возьмите любимое или произвольное). Выведите его на экран, а также...

В заданном тексте определить количество слов, которые заканчиваются на букву А
Помогите написать програму.. В заданном тексте определить количество слов, которые заканчиваются на...

В заданном тексте определить количество слов, которые заканчиваются на букву А
Помогите перевести программу из АВС в Турбо Паскаль заранее спасибо.:declare: var s : string;...

Подсчет количества слов в строке, которые начинаются на заданную букву.
Напишите программу, которая подсчитывает количество слов в строке, которые начинаются на заданную...


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

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

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