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

Вывести только те слова, все буквы которых различны

15.06.2017, 12:48. Просмотров 266. Ответов 12
Метки нет (Все метки)

Помогите сделать надо чтобы вводились слова и выводились только те в которых все буквы разные
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.06.2017, 12:48
Ответы с готовыми решениями:

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

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

Определите все ли буквы слова различны.
Определите все ли буквы слова различны.

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

Строки (вывести все слова, содержащие только латинские буквы)
Здравствуйте, нужно вывести все слова, содержащие только латинские буквы....

12
Игорь1986
121 / 114 / 57
Регистрация: 08.09.2014
Сообщений: 1,047
Завершенные тесты: 1
15.06.2017, 13:26 2
Напечатать слова, в которых нет повторяющихся букв

Добавлено через 46 секунд
Напечатать те слова строки, в которых нет повторяющихся букв
0
Ferrari F1
793 / 522 / 156
Регистрация: 27.01.2015
Сообщений: 3,025
Записей в блоге: 1
Завершенные тесты: 1
15.06.2017, 13:38 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
27
28
29
30
31
32
33
34
35
36
#include <iostream>
#include <sstream>
#include <iterator>
#include <string>
#include <unordered_set>
#include <algorithm>
 
using namespace std;
 
void print(string const& str)
{
    istringstream ist{ str };
    
    for_each(
        istream_iterator<string>{ ist }, istream_iterator<string>{},
        [](string const& str)
    {
        const unordered_set<char> st
        {
            str.cbegin(), str.cend()
        };
 
        if ( st.size() == str.size() )
            cout << str << endl;
    });
}
 
int main()
{
    string str{ "asdf qwerh asdfa" };
    //getline(cin, str);
 
    print(str);
 
    system("pause");
}
0
IgorAvas
0 / 0 / 0
Регистрация: 12.10.2016
Сообщений: 79
15.06.2017, 13:54  [ТС] 4
А полегче можно? Я такого не проходил ещё
0
Ferrari F1
793 / 522 / 156
Регистрация: 27.01.2015
Сообщений: 3,025
Записей в блоге: 1
Завершенные тесты: 1
15.06.2017, 13:58 5
Цитата Сообщение от IgorAvas Посмотреть сообщение
полегче можно?
IgorAvas, воу-воу ПАЛЕХЧЕ!!!

Название: 3DYjViPBJ8c.jpg
Просмотров: 22

Размер: 14.8 Кб
1
Fixer_84
1228 / 767 / 726
Регистрация: 30.04.2016
Сообщений: 2,530
15.06.2017, 14:19 6
IgorAvas, здравствуйте! Вот еще вариант:

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
#include <iostream>
#include <string>
#include <sstream>
#include <algorithm>
 
using namespace std;
 
bool AllDiff(string s)
{
    int k, len;
    sort(s.begin(), s.end());
    len = s.length();
    k = 0;
    for (int i = 0; i < len - 1; i++)
    {
        if (s[i+1] != s[i])
            k++;
    }
    k++;
    if (k == len)
        return true;
    return false;
}
 
int main()
{
    string s, st; //Объявляем строковые переменные
    cout << "Введите строку из слов (латинские буквы):" << endl;
    getline(cin, s); //Вводим строку
    stringstream str(s); //Помещаем строку в поток
    cout << "Искомые слова:" << endl;
    while (str >> st) //Пробегаем по строке
    {
        if (AllDiff(st))
            cout << st << endl; //Выводим искомые слова
    }
    cin.get();
    return 0;
}
0
afront
1052 / 999 / 752
Регистрация: 29.02.2016
Сообщений: 3,189
15.06.2017, 14:31 7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <string>
#include <unordered_set>
 
int main()
{
    std::string s;
beg: std::cout<< "Enter word ";
    std::cin >> s;
    if(std::unordered_set<char>(s.cbegin(), s.cend()).size() == s.length())
        std::cout << s;
    else goto beg;
    std::cout<<std::endl;
    system("pause");
    return 0;
}
0
Fixer_84
1228 / 767 / 726
Регистрация: 30.04.2016
Сообщений: 2,530
15.06.2017, 14:53 8
IgorAvas, вот вариант с упрощенной функцией проверки. Он короче и понятнее:

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
#include <iostream>
#include <string>
#include <sstream>
#include <algorithm>
 
using namespace std;
 
bool AllDiff(string s)
{
    bool flag = true;
    sort(s.begin(), s.end());
    for (int i = 0; s[i]; i++)
    {
        if (s[i+1] == s[i])
        {
            flag = false;
            break;
        }
    }
    if (flag)
        return true;
    return false;
}
 
int main()
{
    string s, st; //Объявляем строковые переменные
    int k;
    cout << "Введите строку из слов (латинские буквы):" << endl;
    getline(cin, s); //Вводим строку
    stringstream str(s); //Помещаем строку в поток
    cout << "Искомые слова:" << endl;
    k = 0;
    while (str >> st) //Пробегаем по строке
    {
        if (AllDiff(st))
        {
            cout << '#' << k + 1 << ": ";
            cout << st << endl; //Выводим искомые слова
            k++;
        }
    }
    if (!k)
        cout << "Искомые слова не найдены!" << endl;
    cin.get();
    return 0;
}
0
IgorAvas
0 / 0 / 0
Регистрация: 12.10.2016
Сообщений: 79
15.06.2017, 15:03  [ТС] 9
На 8 строку постоянно ругается
0
Fixer_84
1228 / 767 / 726
Регистрация: 30.04.2016
Сообщений: 2,530
15.06.2017, 15:46 10
Цитата Сообщение от IgorAvas Посмотреть сообщение
На 8 строку постоянно ругается
Кому адресовано это сообщение?
0
IgorAvas
0 / 0 / 0
Регистрация: 12.10.2016
Сообщений: 79
15.06.2017, 15:50  [ТС] 11
Вам
0
Fixer_84
1228 / 767 / 726
Регистрация: 30.04.2016
Сообщений: 2,530
15.06.2017, 15:52 12
IgorAvas, А на что именно ругается и в какой среде вы запускайте программу?
0
MrGluck
Модератор
Эксперт CЭксперт С++
8105 / 4957 / 1436
Регистрация: 29.11.2010
Сообщений: 13,451
15.06.2017, 15:53 13
IgorAvas, там не на что ругаться, вполне валидное объявление функции.

Добавлено через 14 секунд
Выложите текст ошибки
0
15.06.2017, 15:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.06.2017, 15:53

Выяснить, все ли буквы слова Х, стоящие на нечетных местах, различны
Задание 2 Выяснить, все ли буквы слова Х, стоящие на нечетных местах, различны.

/*Введём текст с заканчивающийся точкой , вывести все слова у которых первая и последняя буквы одинаковы.*/h
Программа работает а результата нет, или я туплю... /*Введём текст с...

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


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

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

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