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

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

Войти
Регистрация
Восстановить пароль
 
JustBear
5 / 5 / 0
Регистрация: 01.03.2013
Сообщений: 160
#1

Удаление определенных цифр из строки - C++

25.12.2013, 17:53. Просмотров 1075. Ответов 7
Метки нет (Все метки)

Всем привет. Интересная задачка попалась, сижу, думаю.
Пользователь вводит цифровой набор, к примеру, 565471236109.
Из этой строчки надо выкинуть цифры, пусть это будут 5 и 1, и оставить все остальные в том же порядке. То бишь, получить 64723609.
Подскажите, пожалуйста, как это сотворить?
Кода особого пока нет. Разве что цикл пробежки по длине цифрового блока и все. Думал erase сунуть, но не то.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.12.2013, 17:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Удаление определенных цифр из строки (C++):

Удаление определенных букв из строки - C++
Доброго времени суток! Помогите, пожалуйста, с заданием! Буду очень благодарен! Дано задание: написать функцию, чтобы из строки,...

Удаление из строки определенных символов - C++
Подскажите плиз функцию которая удаляет с строки символы. Например ввели символ А и с строки str удалилися все символы А... Если...

Удаление цифр из символьной строки - C++
Доброго всем времени суток :) Такая задача: на языке C нужно составить программу удаления из строки символов только цифры. Например, строка...

Проверка наличия определенных цифр в числе - C++
int n,kn = 0,kc = 0,a,b; cout<<"Введите натуральное число:"; cin >>n; cout <<"Введите A:"; cin >>a; cout <<"Введите...

Подсчитать количество телефонов, номер которых начинается с определенных цифр - C++
Реализовать следующую условную компиляцию: подсчитать количество телефонов, номер которых начинается с цифр 050, 093, 098, 065 (отдельно...

Здесь есть удаление столбца, как добавить удаление строки - C++
#include <iostream> #include <conio.h> using namespace std; int main() { int n; do {cout << "Razmer massiva: "; cin >> n;...

7
zss
Модератор
Эксперт С++
6478 / 6041 / 1983
Регистрация: 18.12.2011
Сообщений: 15,657
Завершенные тесты: 1
25.12.2013, 18:01 #2
C++
1
2
3
4
5
6
7
8
9
10
char str[]="565471236109";
for(int i=0;i<strlen(str);i++)
{
        if(str[i]=='1' || str[i]=='5')
        {
              for(int j=i;j<strlen(str);j++)
                 str[j]=str[j+1];
             i--;
        }
}
1
JustBear
5 / 5 / 0
Регистрация: 01.03.2013
Сообщений: 160
25.12.2013, 18:07  [ТС] #3
zss, спасибо, но почему он ругается на J, что тот не создан? Пытаюсь пересоздать - орет.

Добавлено через 1 минуту
zss, а все, мой косяк, все отлично, спасибо)
0
Somebody
2791 / 1602 / 147
Регистрация: 03.12.2007
Сообщений: 4,197
Завершенные тесты: 1
25.12.2013, 18:12 #4
C++
1
2
for (char *dst = str, *src = str; (*dst = *src); src++)
    dst += *src != '1' && *src != '5';
1
DiffEreD
1431 / 768 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
25.12.2013, 18:13 #5
C++
1
2
3
4
5
6
7
8
9
10
11
int main()
{
   long long number = 565471236109;
   std::string s = std::to_string(number);
   s.erase(std::remove_if(s.begin(), s.end(), [](const char ch){return ch == '1' || ch == '5';}),
           s.end());
   number = std::stoll(s);
   std::cout << number;
 
   return 0;
}
1
JustBear
5 / 5 / 0
Регистрация: 01.03.2013
Сообщений: 160
25.12.2013, 18:15  [ТС] #6
Воу, ребят, из-за чего может такая ошибка вылезать?
Как раз сразу после завершения работы проги.
Если мы вводим число, то лучше использовать getline или обойтись cin?
0
Миниатюры
Удаление определенных цифр из строки  
zss
Модератор
Эксперт С++
6478 / 6041 / 1983
Регистрация: 18.12.2011
Сообщений: 15,657
Завершенные тесты: 1
25.12.2013, 18:35 #7
Это значит, что где-то вылезли за границы массива.
0
JustBear
5 / 5 / 0
Регистрация: 01.03.2013
Сообщений: 160
25.12.2013, 18:36  [ТС] #8
zss, а все, доперло, спс)
0
25.12.2013, 18:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.12.2013, 18:36
Привет! Вот еще темы с ответами:

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

Вводится две строки, состоящие из цифр; из этих цифр составить максимальное число - C++
Доброго времени суток! Нужно написать программу, где на экране вводится две строки состоящие из цифр, Из этих цифр составить максимальное...

Считать текст из файла и записать в другой только строки, не содержащие определенных символов - C++
Всем привет, кто может помочь с решением данной задачи, буду очень благодарен. &quot;Написать программу, которая считывает текст из файла и...

Из символов введенной строки сформировать две строки - из цифр и букв - C++
Здраствуйте, помогите пожалуйста с задачей, надо из символов введенной строки сформировать две строки - из цифр и букв


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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