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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
andriyboss
0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 6
#1

Небольшая функция, удаляющая однаковые букви в слове - C++

29.11.2013, 00:25. Просмотров 262. Ответов 4
Метки нет (Все метки)

как написать функцию чтобы удаляло однаковые букви в слове?
C++
1
2
3
4
5
6
7
8
9
cout << "\n Введите ключовое слово : ";
    gets_s(kluch);//
    puts(kluch);
    int o=strlen(kluch);
    for(int i=0;i<o;i++)
    {
        alfEng[i]=kluch[tmp++];
        cout<< alfEng[i]<<" ";
    }
Добавлено через 2 минуты
например я введу PASSWORDD а должно мне записать PASWORD..как ето кусучок кода написать?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2013, 00:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Небольшая функция, удаляющая однаковые букви в слове (C++):

Функция удаляющая из массива заданный элемент - C++
Написать и протестировать функцию compress(), которая сжимает массив, удаляя из него элемент, номер которого введится с клавиатуры.

Функция, удаляющая все элементы в списке - C++
Как ее реализовать? Прошу помощи

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

Функция, удаляющая элемент из двусвязного списка - C++
Написать функцию, удаляющую элемент из двусвязного списка. Убедитесь, что программа работает, когда надо удалить первый и/или последний...

Функция удаляющая первый узел из связного списка - C++
Реализуйте и протестируйте функцию: template &lt;class T&gt; void DeleteFront(Node&lt;T&gt;* &amp;head);удаляющую первый узел из связного списка,...

Функция удаляющая пробелы в начале и в конце строки - C++
Разработайте функцию std::string TrimBlanks(std::string const&amp; str), выполняющую отрезание пробелов в начале и в конце строки str, и...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
D3fend0r
17 / 17 / 1
Регистрация: 14.09.2013
Сообщений: 37
29.11.2013, 10:24 #2
Вот например, работает только с заглавными буквами. Функция обходит все слово, если буква еше не попадалась добовляем ее к результату, в противном случае ничего не делаем.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
string Delete_Same_Letters(const string &str)
{
    int alphabet[26];
    string res;
    for (int i = 0; i < 26; i++)
    {
        alphabet[i] = 0;
    }
 
    for (char ch : str)
    {
        if (alphabet[ch - 65] == 0)
        {
            res += ch;
            alphabet[ch - 65] = 1;
        }
    }
    return res;
}
0
alsav22
5420 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
29.11.2013, 11:15 #3
Цитата Сообщение от andriyboss Посмотреть сообщение
как написать функцию чтобы удаляло однаковые букви в слове?
Просто все одинаковые (оставлять каждой буквы по одной) или подряд идущие одинаковые (оставлять одну из них)?
0
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
29.11.2013, 11:27 #4
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
#include <iostream>
#include <regex>
#include <string>
using namespace::std;
 
int main()
{ 
    string s="password";
    cout <<"s= "<<s<<endl;
    string result;
    smatch sm;
    while(regex_search(s,sm,regex("[\\w ]{2}")))
    {
        if(sm[0].str()[0]==sm[0].str()[1])
        {
            s=sm[0].str()[1]+sm.suffix().str();
        }
        else
        {
            result+=sm[0].str()[0];
            s=sm[0].str()[1]+sm.suffix().str();
        }
    }
    result+=s;
 
    cout <<"result= "<<result<<endl;
 
    return 0;
}
0
0x10
2464 / 1636 / 238
Регистрация: 24.11.2012
Сообщений: 4,031
29.11.2013, 11:30 #5
Пример по ссылке: http://www.cplusplus.com/reference/algorithm/unique/
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.11.2013, 11:30
Привет! Вот еще темы с ответами:

Функция удаляющая элемент массива с заданным номером - C++
Написать и протестировать функцию compress(), которая сжимает массив, удаляя из него элемент, номер которого вводится с клавиатуры.

Функция удаляющая первое и последнее вхождение в строке заданного символа - C++
Функция удаляет первое и последнее вхождение в строке заданного символа.

небольшая функция на c++ - C++
Необходимо создать функцию,которая меняет элементы массива по логике первый с последним,второй с предпоследним и т.д. начиная с середины...

Маємо рядок, що містить букви і цифри - C++
Маємо рядок, що містить букви і цифри. Перетворіть цей рядок так, щоб спочатку в ньому йшли всі букви, що зустрічаються у вихідному...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
29.11.2013, 11:30
Ответ Создать тему
Опции темы

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