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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 42, средняя оценка - 4.93
Awessome
0 / 0 / 0
Регистрация: 17.09.2010
Сообщений: 14
#1

С клавиатуры вводится текстовая строка на русском языке. Найдите количество гласных и согласных букв. - C++

17.09.2010, 13:50. Просмотров 5813. Ответов 29
Метки нет (Все метки)

С клавиатуры вводится текстовая строка на русском языке. Найдите количество гласных и согласных букв. Используйте фильтр для ввода только текстовых символов.
Помогите никак не могу сделать.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2010, 13:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос С клавиатуры вводится текстовая строка на русском языке. Найдите количество гласных и согласных букв. (C++):

Дана строка: предложение на русском языке. Подсчитать количество содержащихся гласных букв - C++
Пример в паскале(рабочий) program st; var S:String; i,Num:integer; begin Write('S: '); Readln(S);

Определите долю гласных букв в заданном тексте на русском (английском) языке - C++
Здравствуйте.Помогите пожалуйста с заданием.Заранее спасибо.

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

Дан файл, содержащий текст на русском языке. Подсчитать кол-во слов, в которых кол-во гласных и согласных совпадает - C++
Дан файл, содержащий текст на русском языке. Подсчитать кол-во слов, в которых кол-во гласных и согласных совпадает. Никак не могу...

Найти количество гласных и согласных букв - C++
Помогите плиз!Надо найти кол-во гласных и согласных букв.Вот что-то понять не могу где ошибка.Ни фига не считает. #include <stdio.h> ...

Определить количество гласных и согласных букв в тексте - C++
Дан текст. Посчитать количество гласных и согласных букв,текст считывается из файла. Помогите пожалуйста

29
TheMachinist
244 / 176 / 15
Регистрация: 14.06.2010
Сообщений: 422
17.09.2010, 14:47 #2
Организовываем ввод пользователем
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"Rus");
 
    char str[100];
    gets(str);
        
        system("pause");
        return 0;
}
Потом можно создать парочку массивчиков с гласными и согласными , и сравнивать,и считать
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,545
Завершенные тесты: 3
17.09.2010, 14:52 #3
NikolaWhite, Ага. Шикарно считается русская строка. Код то пробовали на виндовсе допустим?
0
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
17.09.2010, 15:05 #4
Lavroff, в билдере и в студии работает с русской строкой, без setlocale(). В чём подвох?
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,545
Завершенные тесты: 3
17.09.2010, 15:06 #5
dihlofos, В студии даже? Странно. А что значит работает? Выводит впоряде русскую строку?
Ах да. Зачем использовать в С++ gets?

str 0x0012fefc "ЏаЁўҐв, ¬Ёа" char [100]

Содержание строки после ввода Привет, мир. Шикарно,м?)
0
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
17.09.2010, 15:08 #6
Ну например, такая штука:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
 
int main()
{
        char str[100];
    gets(str);
 
    puts(str);
 
    cout<<str[2];
    cout<<str[4];
    cout<<str[8];
 
    system("pause");
    return 0;
}
Для "Привет, мир!":

Привет, мир!
ием
0
M128K145
Эксперт С++
8297 / 3517 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
17.09.2010, 15:08 #7
Для чтения строки из кириллических символов используйте OemToChar, для вывода - CharToOem
1
Awessome
0 / 0 / 0
Регистрация: 17.09.2010
Сообщений: 14
17.09.2010, 15:10  [ТС] #8
Цитата Сообщение от NikolaWhite Посмотреть сообщение
Организовываем ввод пользователем
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"Rus");
 
    char str[100];
    gets(str);
        
        system("pause");
        return 0;
}
Потом можно создать парочку массивчиков с гласными и согласными , и сравнивать,и считать
Это и так есть, я не знаю как прописать чтоб он сравнивал и ставил ограничение.
0
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
17.09.2010, 15:45 #9
Awessome, работает, но только для латиницы С русским разберётесь?
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
#include <iostream>
 
using namespace std;
 
int main()
{ 
    int gl=0, sg=0, i, j;
    char gls[]="aeiouy";
    char sog[]="bcdfghjklmnpqrstvwxz";
    char str[100];
 
    cin>>str;
 
    for(i=0; i<strlen(str); i++)
        for(j=0; j<strlen(gls); j++)
            if(str[i]==gls[j])
                gl++;
 
    for(i=0; i<strlen(str); i++)
        for(j=0; j<strlen(sog); j++)
            if(str[i]==sog[j])
                sg++;
 
    cout<<gl<<" "<<sg<<endl;
    system("pause");
    return 0;
}
1
Awessome
0 / 0 / 0
Регистрация: 17.09.2010
Сообщений: 14
17.09.2010, 15:54  [ТС] #10
dihlofos,
Да, спасибо большое.
0
dihlofos
17.09.2010, 15:54
  #11

Не по теме:

Что, прямо с русским сделали?

0
matroskin
4 / 4 / 1
Регистрация: 15.09.2010
Сообщений: 5
17.09.2010, 17:27 #12
Не знаю, надо ли еще, но вот еще вариант. Ищет количество гласных и согласных и фильтрация ввода только по тексту. Правда тоже на латинице, а то лень было с русским разбираться =)
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 CountSogl;
    int ind = 0;
    int index = 0;
    char ch[999];
    bool flag = false;
    cout<<"Vvedite stroku:\n\n";
    while(cin.getline(ch,999))
    {
        for (int i = 0;i<(sizeof(ch)/sizeof(ch[i]));i++)
        {   
            if((ch[i]>='a' && ch[i]<='z') || (ch[i]=='\0') || (ch[i]>='A' && ch[i]<='B' ))
            {
                if(ch[i] == 'e'|| ch[i]=='u' || ch[i] == 'i' || ch[i] == 'o' || ch[i]=='a')
                {
                index++;
                }
                ind++;
                if(ch[i] != '\0')
                    continue;
                CountSogl = --ind-index;
                cout<<"Kol-vo glasnih: "<<index<<"\nKol-vo soglasnih: "<<CountSogl;
                ind = index = 0;
                cout<<"\n\nVvedite stroku:\n\n";
                break;
            }
            else
            {   
                cout<<"Warning, dlia prodoljenia nazmite \"Enter\" i zanovo vvedite stroku!!!\n\n";
                cin.clear();
                while(cin.get()!='\n')
                    continue;
                break;
            }
        }
    }
    return 0;
}
2
TheMachinist
244 / 176 / 15
Регистрация: 14.06.2010
Сообщений: 422
17.09.2010, 18:38 #13
Для чтения строки из кириллических символов используйте OemToChar, для вывода - CharToOem
Интересно как этим пользоваться?
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,545
Завершенные тесты: 3
17.09.2010, 18:41 #14
NikolaWhite, Он из библиотеки windows.h
1
TheMachinist
244 / 176 / 15
Регистрация: 14.06.2010
Сообщений: 422
17.09.2010, 19:06 #15
Он из библиотеки windows.h
Что-то не найти мне windows.h на cplusplus.com.
Или есть другой ресурс?
0
17.09.2010, 19:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.09.2010, 19:06
Привет! Вот еще темы с ответами:

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

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

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

Количество согласных букв в строке введенной с клавиатуры - C++
Помогите пожалуйста с программой:wall: Надо написать программу которая будет подсчитывать количество согласных букв в строке введенной...


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

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

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