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

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

18.10.2022, 19:29. Показов 544. Ответов 5

Студворк — интернет-сервис помощи студентам
По идее должно быть примерно так:
ввод: gfdtre ecrvtb ctbevr
вывод: ert
или
ввод: edefeg se ev
вывод: e

Есть вариант программы, но он не работает
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>
#include <ctime>
using namespace std;
 
int main()
{
    int n;
    string s, word, s2 = s, S, S1;
    double*a = new double[n];
    cout << "String: ";
    getline(cin, s);
    n = s.size();
    stringstream words(s);
    while (words >> word)
    {
        for(int i = 0; i < s.size(); i++)
        for(int j = 0; j < word.size(); j++)
        if ((word.find(s[i])!=string::npos) && (s[i] == s[j]))
        {
            a += s[i];
        }   
    }
 
    
    for (int i = 0; i < n - 1; i++) 
    for (int j = i + 1; j < n; j++) 
    if (a[i]==a[j]) 
        { 
        for (int k = j; k < n; k++) 
        a[k]=a[k + 1]; 
        n--;
        j--;
        } 
    
    for (int i = 0; i < n; i++)
      cout <<a[i]<<" ";
      cout <<endl;
    delete[]a;
system("pause");
return 0;
}
также есть ещё одна версия, она работает, но здесь нужно чтобы программа сама считала количество повторяющихся букв
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
/*
Дан текст, слова в котором разделены одинарным символом пробела. 
Определить буквы, которые встречаются в каждом из слов текста по одному 
разу или вывести сообщение, что таких букв нет.
*/
#include <iostream> 
#include <string>
#include <sstream> 
using namespace std;
int main()
{
    string s, word, s2 = s, S, S1;
    cout << "String: ";
    getline(cin, s);
    /*
    int siz;
    int* St = new int[siz];
    */
        int kol;
    cout << "Number of repeated letters: ";
    cin >> kol;
    int w = 0, index = 0, q = 0, qs = 0;
    while (s.find(' ', index) != -1) 
    {
        index = s.find(' ', index + 1);
        w++;
    }
    cout <<"Number of words: " << w << "\n";
    
    stringstream words(s);
    while (words >> word)
    {
        for(int i = 0; i < s.size(); i++)
        for(int j = 0; j < word.size(); j++)
        if ((word.find(s[i])!=string::npos) && (s[i] == s[j]))
        {
            S += s[i];
        }   
    } 
    //cout << S << "\n";
 
    for (int i = 0; i < s.size() - 1; i++)
    {
    for (int j = 1; j < s.size(); j++)
    if (S[i] == S[j])
    {
        q++;
        if (q == w) S1 += S[i];
    }
    q = 0;
    }
    
    S1.erase(kol, S1.size());
    cout << "    " << "S1 = " << S1 << "\n";
 
 
return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.10.2022, 19:29
Ответы с готовыми решениями:

Дан текст, заканчивающийся точкой. Соседние слова разделены запятыми. Определить количество слов-палиндромов, которые начинаются с буквы "а".
Дан текст, заканчивающийся точкой. Соседние слова разделены запятыми. Определить количество слов-палиндромов, которые начинаются с буквы...

дан текст,в котором слова отделяются пробелами ,в конце стоит точка.Определить количество слов,которые начинаются и заканчиваются одинаковыми символам
дан текст,в котором слова отделяются пробелами ,в конце стоит точка.Определить количество слов,которые начинаются и заканчиваются...

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

5
Гвоздь Задиров
 Аватар для Folian
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
18.10.2022, 19:41
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    std::string str { "gfdtre ecrvtb ctbevr" };
    std::stringstream strstr { str };
 
    std::string wrd;
    strstr >> wrd;
    std::set<char> res { wrd.begin(), wrd.end() };
    while(strstr >> wrd)
    {
        std::set<char> next { wrd.begin(), wrd.end() };
        std::set<char> temp { std::move(res) };
        std::set_intersection(next.begin(), next.end(), temp.begin(), temp.end(), std::inserter(res, res.begin()));
    }
 
    for(auto x : res)
        std::cout << x;
0
0 / 0 / 0
Регистрация: 29.06.2022
Сообщений: 16
18.10.2022, 19:49  [ТС]
Цитата Сообщение от Folian Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
  std::string str { "gfdtre ecrvtb ctbevr" };
    std::stringstream strstr { str };
std::string wrd;
    strstr >> wrd;
    std::set<char> res { wrd.begin(), wrd.end() };
    while(strstr >> wrd)
    {
        std::set<char> next { wrd.begin(), wrd.end() };
        std::set<char> temp { std::move(res) };
        std::set_intersection(next.begin(), next.end(), temp.begin(), temp.end(), std::inserter(res, res.begin()));
    }
for(auto x : res)
        std::cout << x;
 
она не запускается
0
Гвоздь Задиров
 Аватар для Folian
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
18.10.2022, 19:52
Цитата Сообщение от qweewq_qweewq Посмотреть сообщение
она не запускается
если тупо скопипастить - конечно.
0
0 / 0 / 0
Регистрация: 29.06.2022
Сообщений: 16
18.10.2022, 20:49  [ТС]
Цитата Сообщение от Folian Посмотреть сообщение
если тупо скопипастить - конечно.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream> 
#include <string>
#include <sstream> 
using namespace std;
int main()
{
string str { "gfdtre ecrvtb ctbevr" };
stringstream strstr { str };
string wrd;
strstr >> wrd;
set<char> res { wrd.begin(), wrd.end() };
while(strstr >> wrd)
    {
        set<char> next { wrd.begin(), wrd.end() };
        set<char> temp { move(res) };
        set_intersection(next.begin(), next.end(), temp.begin(), temp.end(), inserter(res, res.begin()));
    }
for(auto x : res)
        cout << x;
return 0;
}
не запускается
0
Гвоздь Задиров
 Аватар для Folian
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
18.10.2022, 21:01
Цитата Сообщение от qweewq_qweewq Посмотреть сообщение
не запускается
Оно же пишет почему
C++
1
2
3
#include <set>
#include <algorithm>
#include <iterator>
Цитата Сообщение от qweewq_qweewq Посмотреть сообщение
using namespace std;
Вот не лень было все std:: подтирать?
Мож ещё на next начнёт бухтеть из-за этого.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.10.2022, 21:01
Помогаю со студенческими работами здесь

Дан текст, слова в котором разделены хотя бы одним пробелом. Найти слово, в котором букв “А” больше, чем в других.
1. (строки) Дан текст, слова в котором разделены хотя бы одним пробелом. Найти слово, в котором букв “А” больше, чем в других. 2....

Дан текст, заканчивающийся точкой. Вывести все слова из этого текста, в котором первые две буквы встречаются еще раз под
Дан текст, заканчивающийся точкой. Вывести все слова из этого текста, в котором первые две буквы встречаются еще раз подряд, но в обратном...

Дан текст, в котором встречаются символы «!», «?», «.». Разбить текст на абзацы по 3 предложения в каждом
Друзья помогите!!!!! Дан текст, в котором встречаются символы «!», «?», «.». Разбить текст на абзацы по 3 предложения в каждом.

Дан текст, слова в котором слова разделены одним или несколькими пробелами. Вывести каждое слово текста
Строковый тип данных. Задачи. 5) Дан текст, слова в котором слова разделены одним или несколькими пробелами. Вывести каждое слово...

Дан текст, слова в котором разделены хотя бы одним пробелом
Дан текст, слова в котором разделены хотя бы одним пробелом. подсчитать кол-во слов в тексте. Добавлено через 44 секунды Как...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru