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

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

22.12.2018, 07:24. Просмотров 478. Ответов 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
#include "pch.h"
#include <iostream>
#include <clocale>
using namespace std;
 
int main() {
    setlocale(LC_ALL, "rus");
    char string[50];
    char *ptr_a, *ptr_e, *ptr_i, *ptr_o, *ptr_u, *ptr_y, a = 'A', e = 'E', i = 'I', o = 'O', u = 'U', y = 'Y';
    cout << "Введите строку: " << endl;
    gets_s(string);
    ptr_a = strchr(string, a);
    ptr_e = strchr(string, e);
    ptr_i = strchr(string, i);
    ptr_o = strchr(string, o);
    ptr_u = strchr(string, u);
    ptr_y = strchr(string, y);
    if ((ptr_a) && (ptr_e) && (ptr_i) && (ptr_o) && (ptr_u) && (ptr_y))
        cout << "Встречаются все заглавные гласные";
    else
        cout << "Встречаются не все заглавные гласные";
    return 0;
}
Проблема в том, что следует использовать цикл, но никак не могу сообразить, как это корректно реализовать.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2018, 07:24
Ответы с готовыми решениями:

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

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

Распечатать все гласные буквы, встречающиеся в тексте по одному разу
1. В початковий файл додати прізвище, ім'я, по-батькові, дату народження та групу студентів....

Напечатать по одному разу все малые гласные буквы, что входят в текст
дано текст из латинских букв после которых следует точка. в алфавитном порядке напечатать(по одному...

2
valen10
Параллельный Кот
1427 / 593 / 230
Регистрация: 25.03.2016
Сообщений: 1,365
Завершенные тесты: 1
22.12.2018, 07:52 2
Рассмотрите вариант: создать массив codes[] с кодами заглавных гласных и массив count[256] с количеством каждого из символов в строке. В цикле увеличивать количество на 1 для соответствующего символа, и затем в цикле проверить для каждой из заглавных гласных их количество. Если все отличаются от нуля, значит встречаются все, иначе встречаются не все (если все нули, то вообще не встречаются).
1
analogov net
778 / 291 / 153
Регистрация: 17.11.2018
Сообщений: 757
22.12.2018, 11:18 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
25
26
int main()
{
    setlocale( LC_ALL, "rus" );
 
    char string[50] = "YeS - TO bE, OR nOt tO bE, tHAt is ThE qUeStIoN.";
    int  array[128] = { 0 };     
   
    cout << "Введите строку: " << endl;
 //   gets_s( string );
    cout << string << endl;
 
    for( char * p = string; *p; p++ )
        if( strchr( "AEIOUY", *p ) )
            array[*p]++;
 /*   
    for( char i = 'A'; i <= 'Y' ; i++ )
        if( array[i] )
            cout << i << ": " << array[i] << endl;
*/
    if( array['A'] && array['E'] && array['I'] && array['O'] && array['U'] && array['Y'] )
        cout << "Встречаются все заглавные гласные" << endl;
    else
        cout << "Встречаются не все заглавные гласные" << endl;
 
    return 0;
}
1
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2018, 11:18

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

Множества. Вывести по одному разу все строчные русские гласные буквы, входящие в текст
Составить программу печати по одному разу в алфавитном порядке всех строчных русских гласных букв,...

Вывести все слова, которые встречаются в строке по одному разу
Дана последовательность, содержащая от 1 до 30 слов, в каждом из которых от 1 до 5 строчных...

Напечатать все слова, которые встречаются в строке по одному разу
Задание такое. Дана строка, напечатать все слова, которые встречаются в ней по одному разу. Код...

Напечатать все слова, которые встречаются в строке только по одному разу.
Вот такая вот задача: Дана строка s, содержащая от 1 до 30 слов, в каждом из которых от 1 до 5...


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

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

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