Форум программистов, компьютерный форум CyberForum.ru

Строки. Напечатать слова, в которых нет повторяющихся букв - C++

Восстановить пароль Регистрация
 
fits
3 / 3 / 1
Регистрация: 08.12.2012
Сообщений: 47
08.05.2013, 15:31     Строки. Напечатать слова, в которых нет повторяющихся букв #1
Дана последовательность, содержащая от 1 до 30 слов. Слова разделены одним или несколькими пробелами. За последним словом – точка. Напечатать слова, в которых нет повторяющихся букв;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2013, 15:31     Строки. Напечатать слова, в которых нет повторяющихся букв
Посмотрите здесь:

Вывести слова, в которых нет повторяющихся букв и буквы слова упорядочены по алфавиту C++
C++ Напечатать те слова массива, в которых нет повторяющихся букв
C++ найти и вывести на экран слова, в которых нет повторяющихся букв
C++ [C++] Напечатать те слова строки, где в слове нет повторяющихся букв
C++ Строки: Вывести на экран только те слова, которые отличаются от последнего и в которых нет повторяющихся букв.
C++ Вывести слова, в которых нет повторяющихся букв
Напечатать те слова данной строки, которые отличны от последнего слова, и в слове нет повторяющихся букв C++
Напечатать слова, в которых нет повторяющихся букв C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
08.05.2013, 17:24     Строки. Напечатать слова, в которых нет повторяющихся букв #2
fits,

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
#include <iostream>
#include <iterator>
#include <algorithm>
#include <string>
#include <sstream>
 
void display_word(std::string &_word){                      //процедура проверки слова
    bool flag(true);                                        //флаг для установления одинаковых букв
    std::string::size_type idx(0), pos(0);                  //промежуточные позиции в строке
 
    while(idx != _word.size()){                             //пока не рассмотрим все слово
        pos =_word.find_last_of(_word[idx], _word.size());  //поиск повторяющейся буквы
        if(pos != idx){                                     //если буква найдена
            flag = false;                               
            break;                                          //выходим
        }
        else
            ++idx;                                          //иначе переходим на следующую букву
    }
 
    std::cout << (flag ? _word + '\n' : "");                //вывод
}
 
int main()
{
    std::string str("She did not see him yesterday. Neither did I");    //исходная строка
    copy(str.begin(), str.end(),                                //вывод строки
         std::ostream_iterator<char>(std::cout));
    std::cout << std::endl;
 
    std::string word;                                           //промежуточное слово
    std::istringstream ii(str);
 
    while(ii >> word){
        display_word(word);                                     //проверяем каждое слово
    }
 
    std::cout << "\n\n";
    return 0;
}
Yandex
Объявления
08.05.2013, 17:24     Строки. Напечатать слова, в которых нет повторяющихся букв
Ответ Создать тему
Опции темы

Текущее время: 23:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru