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

Удалить из первой строки символы, которых нет во второй - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
seerg0
1 / 1 / 0
Регистрация: 17.03.2010
Сообщений: 17
27.10.2010, 16:57     Удалить из первой строки символы, которых нет во второй #1
Составить процедуру, в результате обращения к которой из первой заданной строки удаляется каждый символ, принадлежащий и второй заданной строке.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.10.2010, 16:57     Удалить из первой строки символы, которых нет во второй
Посмотрите здесь:

C++ Как из первой строки удалить те буквы, которые есть во второй строке?
Ввести две символьных строки. Выполнить поиск второй строки в первой и вывести номер позиции, с которой вторая строка содержится в первой. C++
Вычислить произведение элементов в столбцах с нечетным номером; удалить второй элемент первой строки C++
C++ Исключите из второй строки те символы, которые есть в первой, и выведите полученную строку на экра
C++ Вывести на экран слова, в которых все символы повторяющиеся, или сообщение «Нет», если требуемых слов нет
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
yardie
 Аватар для yardie
8 / 8 / 0
Регистрация: 14.07.2010
Сообщений: 166
27.10.2010, 17:11     Удалить из первой строки символы, которых нет во второй #2
А разве в C++ есть процедуры?
может быть функцию?
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
27.10.2010, 17:24     Удалить из первой строки символы, которых нет во второй #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
#include <algorithm>
 
void func(std::string& Str1, std::string & Str2)
{
    for(size_t i=0; i!=Str2.size(); ++i)
    {
         Str1.erase(std::remove(Str1.begin(), Str1.end(), Str2[i]), Str1.end());
    }
}
 
int main()
{
    std::string Str="Hello man";
    std::string Str2="Hllod";
    func(Str, Str2);
    std::cout<<Str<<'\n';
    return 0;
}
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
06.12.2010, 11:54     Удалить из первой строки символы, которых нет во второй #4
C
1
2
    printf("vvedite 1 predlozenie s *  v konce\n");
    enter(a1, sizeof a1);
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int enter(char arr[], int size)
{
    int i, c;
 
    c = '\0';
    /* там внизу проверка c == '*',
       если с не запишется в цикле,
       то случайные данные могут пройти проверку */
    for (i = 0;
         i < size - 1 && (c = getchar()) != EOF && (arr[i] = c) != '*';
         i++)
        ;
    if (c == '*')
        i++;
    arr[i] = '\0';
    if (ferror(stdin))
        return -1;
    return i;
}
Yandex
Объявления
06.12.2010, 11:54     Удалить из первой строки символы, которых нет во второй
Ответ Создать тему
Опции темы

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