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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 5.00
Lizardomsk
0 / 0 / 0
Регистрация: 20.02.2012
Сообщений: 22
#1

Дано слово. Удалить из него все повторяющиеся буквы, оставив их первые вхождения, то есть в слове должны остаться только различные буквы. - C++

02.03.2012, 10:59. Просмотров 2751. Ответов 4
Метки нет (Все метки)

Дано слово. Удалить из него все повторяющиеся буквы, оставив их первые вхождения, то есть в слове должны остаться только различные буквы. на С++
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2012, 10:59     Дано слово. Удалить из него все повторяющиеся буквы, оставив их первые вхождения, то есть в слове должны остаться только различные буквы.
Посмотрите здесь:

Удалить из строки все повторяющиеся буквы, оставив только их первые вхождения - C++
2.Даны строки, содержащие латинские буквы. Удалить из строки все повторяю* щиеся буквы, оставив только их первые вхождения.

Удалить из слова все повторяющиеся буквы, оставив их первые вхождения - C++
Условие:Дано слово. Удалить из него все повторяющиеся буквы, оставив их первые вхождения: в слове должны остаться только различные буквы. ...

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

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

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

Удалить из массива повторяющиеся элементы, оставив только их первые вхождения - C++
Как мне удалять повторяющийся элемент? #include <iostream> using namespace std; int main () {float a; int n,k=0; cout<<"n=";...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
diagon
Higher
1928 / 1194 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
02.03.2012, 11:43     Дано слово. Удалить из него все повторяющиеся буквы, оставив их первые вхождения, то есть в слове должны остаться только различные буквы. #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
 
bool exist['z' + 1];
 
int main()
{
    char str[] = "aabbaaabc";
    
    for (int i = 0; str[i]; ++i)
        if ( !exist[ str[i] ] )
        {
            std::cout << str[i];
            exist[ str[i] ] = true;
        }
    
}
zss
Модератор
Эксперт С++
6321 / 5905 / 1913
Регистрация: 18.12.2011
Сообщений: 15,181
Завершенные тесты: 1
02.03.2012, 11:43     Дано слово. Удалить из него все повторяющиеся буквы, оставив их первые вхождения, то есть в слове должны остаться только различные буквы. #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
bool table[256];
for(int i=0;i<256;i++)table[i]=false;
char word[]="test word";
int L=strlen(word);
for(int i=0;i<L;i++)
{
    char currrent=word[i];
     if(!table[current])
          table[current]=true;
    else
   {
       for(int j=i;j<L-1;j++)
              word[j]=word[j+1];
       L--;
   }
}
 
}
Lizardomsk
0 / 0 / 0
Регистрация: 20.02.2012
Сообщений: 22
02.03.2012, 13:32  [ТС]     Дано слово. Удалить из него все повторяющиеся буквы, оставив их первые вхождения, то есть в слове должны остаться только различные буквы. #4
Что значит bool exist['z' + 1]; в программе
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
#include "stdafx.h"
#include "stdlib.h"
#include "stdafx.h"
#include "conio.h"
#include <iostream>
#include "time.h"
#include "locale"
#include "string.h"
using namespace std;
bool exist['z' + 1];
 
int main()
{
       char string[100] = "";
          printf("Enter your string: ");
        scanf("%s", &string);
        for (int i = 0; string[i]; ++i)
                if ( !exist[ string[i] ] )
                {
                        std::cout << string[i];
                        exist[ string[i] ] = true;
                }
        system("PAUSE");
return 0;
}
 Комментарий модератора 
Создашь еще одну тему-дубль — получишь карточку
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.03.2012, 14:05     Дано слово. Удалить из него все повторяющиеся буквы, оставив их первые вхождения, то есть в слове должны остаться только различные буквы.
Еще ссылки по теме:

Удалить из массива повторяющиеся элементы, оставив только их первые вхождения - C++
Помогите, зачёт пишу

удалить из массива повторяющиеся элементы, оставив только их первые вхождения. класс-контейнер вектор - C++
Добрый день!!! Не могли бы помочь написать программу на С++ при помощи класса-контейнера вектора. вот код)) Заранее спасибо! #include...

Оставить в слове только первые вхождения каждой буквы - C++
Задав с клавиатуры последовательность символов, реализовать обработку ее.Исходные данные задать самостоятельно. оставить в слове...

Строки. В каждом чётном по порядку слове удалить все нечётные буквы, а в каждом нечётном слове удалить все чётные буквы. - C++
8.4.1. Помогите, пожалуйста, решить задачу в С++. Дана строка символов, состоящая из русских слов, разделённых пробелами. В...

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

Преобразовать каждое слово в строке, удалив из него все вхождения первой буквы этого слова - C++
Дана строка, состоящая из символов латинского алфавита, разделенных пробелами (одним или несколькими). Преобразовать каждое слово в строке,...


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

Или воспользуйтесь поиском по форуму:
diagon
Higher
1928 / 1194 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
02.03.2012, 14:05     Дано слово. Удалить из него все повторяющиеся буквы, оставив их первые вхождения, то есть в слове должны остаться только различные буквы. #5
Массив размером ('z' + 1), т.е. максимальный индекс этого массива равен 'z'.
На самом деле это не совсем хороший код, т.к. есть еще несколько символов больше 'z'. Поэтому можно написать 128, так будет надежнее.
Yandex
Объявления
02.03.2012, 14:05     Дано слово. Удалить из него все повторяющиеся буквы, оставив их первые вхождения, то есть в слове должны остаться только различные буквы.
Ответ Создать тему
Опции темы

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