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

Удалить повторяющиеся буквы в слове - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.93
almostclever
1 / 1 / 0
Регистрация: 04.03.2012
Сообщений: 101
18.05.2012, 18:07     Удалить повторяющиеся буквы в слове #1
Удалить повторяющиеся буквы в слове. Кто может помочь?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2012, 18:07     Удалить повторяющиеся буквы в слове
Посмотрите здесь:

C++ удалить все повторяющиеся буквы
Отделите в слове повторяющиеся более двух раз буквы запятыми C++
C++ Дано слово. Удалить из него все повторяющиеся буквы, оставив их первые вхождения, то есть в слове должны остаться только различные буквы.
C++ Строки. В каждом чётном по порядку слове удалить все нечётные буквы, а в каждом нечётном слове удалить все чётные буквы.
Сделать маленькими все буквы в тех словах, в которых нет ни одной буквы, встречающейся в последнем слове строки. C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
almostclever
1 / 1 / 0
Регистрация: 04.03.2012
Сообщений: 101
18.05.2012, 18:25  [ТС]     Удалить повторяющиеся буквы в слове #3
Вот, нашел полегче.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
char* correct(char str[])
{
  int i = 0,j;
    char ch;
    while((ch = str[i++] )!= '\0')
    {
        j = i;
        while(str[j] != '\0')
        {
            if(ch == str[j])
            {
                while(str[j]!='\0')
                str[j] = str[++j];
                 i--;
                break;
            }
            j++;
        }
    }
   return str;
}
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
18.05.2012, 18:37     Удалить повторяющиеся буквы в слове #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <locale.h>
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL,"Russian");
 
    static char psz[256] = "\0";
    printf("Введите слово:"); gets(psz);
 
    for (int i = 0; psz[i] != '\0'; i++)
        for (int k = i+1; psz[k] != '\0'; k++)
            if (psz[i] == psz[k]) {
                for (int m = k; psz[m] != '\0'; m++)
                    psz[m] = psz[m+1]; k--;
            }
            
    printf("%s\n",psz);
}
http://liveworkspace.org/code/d47937...9f1b8142546ffb
Yandex
Объявления
18.05.2012, 18:37     Удалить повторяющиеся буквы в слове
Ответ Создать тему
Опции темы

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