С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/18: Рейтинг темы: голосов - 18, средняя оценка - 4.72
0 / 0 / 1
Регистрация: 24.04.2015
Сообщений: 36
1

Каждая буква входит в слово не менее двух раз

18.03.2016, 11:34. Показов 3356. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Используя класс string, решить задание:
Дана строка. Между соседними словами - не менее одного пробела, за последним словом – точка. Найти и сохранить в строке те слова последовательности, которые удовлетворяют следующему свойству: каждая буква входит в слово не менее двух раз. Все остальные слова удалить.

У меня есть решение этой задачи с использованием char:
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
#include <conio.h>
#include <iostream>
#include <string>
 
using namespace std;
 
int main() 
{
    setlocale(LC_ALL,"Russian");
 
    const int N = 6;
    char str[N][30];
 
    cout << ("Введите строку латинскими буквами, состоящую из 6 слов: ");
 
    cout << endl;
 
    for (int i = 0; i < N; ++i)
    cin >> str[i];
 
    cout << endl;
 
    for (int i = 0; i < N; ++i)
    {
        int n = 1;
        int size = strlen(str[i]);
        for (int j = 0; j < size; ++j)
        {
            for (int k = j + 1; k < size; ++k)
            {
                if ( str[i][j] == str[i][k]) ++n;
                if (n == 2)
                {
                    cout << str[i] << endl;
                    break;
                }
            }
            if (n == 2) break;
        }
    }
 
    _getch();
    return 0;
}
Помогите пожалуйста.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.03.2016, 11:34
Ответы с готовыми решениями:

Каждая буква входит в слово не менее двух раз (на си)
Дана строка, состоящая из слов, разделенных пробелами (одним или несколькими). Напечатать все...

Выводить на экран слово, если каждая его буква входит в него не менее двух раз
C++. Выводить на экран слово, если каждая его буква входит в него не менее двух раз. Предположим...

Определить, имеются ли в последовательности слова, в которых каждая буква слова входит в него не менее двух раз
Есть задача, никак не могу разобраться, помогите пожалуйста реализовать)) Определить, имеются ли...

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

1
161 / 153 / 92
Регистрация: 18.11.2015
Сообщений: 677
18.03.2016, 16:01 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
41
42
43
44
45
#include <conio.h>
#include <iostream>
#include <string>
#include <windows.h>
 
bool checkWord(std::string word) {
    int counter, rightCounter = 0;
    for (int i = 0; i < word.size(); i++) {
        char check = word[i];
        counter = 0;
        for (int j = 0; j < word.size(); j++) {
            if (check == word[j])
                counter++;
        }
        if (counter >= 2)
            rightCounter++;
    }
    return (rightCounter == word.size()) ? true : false;
}
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    const int N = 6;
    std::string str[N];
 
    std::cout << ("Введите строку, состоящую из 6 слов: ");
 
    std::cout << std::endl;
 
    for (int i = 0; i < N; i++)
        std::cin >> str[i];
 
    std::cout << "\nОтвет:\n";
    for (int i = 0; i < N; i++) {
        if (checkWord(str[i]))
            std::cout << str[i] << std::endl;
    }
    
 
    _getch();
    return 0;
}
0
18.03.2016, 16:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.03.2016, 16:01
Помогаю со студенческими работами здесь

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

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

Определить во введенном тексте слова, в которых каждая буква встречается не менее двух раз
Всем доброго времени суток! Весь день ломал голову над заданием, так и не смог его понять:(...

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


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru