Alex Richer
1

Массив строк в с++. Вывести строки, в которых есть цифры. В каждой строке удалить все цифры

24.02.2013, 21:15. Показов 3195. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста с задачей ! срочно!!
Необходимо написать программу, в которой с клавиатуры вводится до 10 символьных строк. Вывести строки, в которых есть цифры. В каждой строке удалить все цифры. Нахождение и удаление символов оформить в виде функций.
За ранее спасибо !
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.02.2013, 21:15
Ответы с готовыми решениями:

Дан массив строк. Преобразовать строки с четной длиной по правилу: удалить все цифры из второй половины строки; а строки
Дан массив строк. Преобразовать строки с четной длиной по правилу: удалить все цифры из второй...

Дан массив строк. Преобразовать строки с четной длиной по правилу: удалить все цифры из второй половины строки; а строки
pascalABC.net

Удалить те слова строки, в которых есть цифры
Удалить те слова рядка, в которых есть цифры.

Вывести все четные цифры, содержащиеся в слове наибольшей длины, и вывести число повторений каждой этой цифры
Дан массив из n слов произвольной длины (длина слова не превышает 80 символов). Элементами слов...

1
What a waste!
1610 / 1302 / 180
Регистрация: 21.04.2012
Сообщений: 2,733
24.02.2013, 21:48 2
Лучший ответ Сообщение было отмечено как решение

Решение

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
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <iterator>
#include <functional>
#include <cctype>
 
 
bool has_digits(std::string const& string) {
   return (std::find_if(string.begin(), string.end(), ::isdigit) != string.end());
}
 
void erase_digits(std::string & string) {
   string.erase(std::remove_if(string.begin(), string.end(), ::isdigit), string.end());
}
 
 
int main() {
   std::vector<std::string> text;
 
   std::string tmp;
   for (std::size_t i = 0; (i != 10) && (std::cin >> tmp); ++i, text.push_back(tmp));
 
   std::cout << "Strings with digits: ";
   std::remove_copy_if(   // std::copy_if
         text.begin()
       , text.end()
       , std::ostream_iterator<std::string>(std::cout, " ")
       , std::not1(std::ptr_fun(has_digits)));
   std::cout << std::endl;
 
   std::for_each(text.begin(), text.end(), erase_digits);
 
   std::cout << "After digits removal: ";
   std::copy(text.begin(), text.end(), std::ostream_iterator<std::string>(std::cout, " "));
   std::cout << std::endl;
}
http://ideone.com/lanFkl
0
24.02.2013, 21:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.02.2013, 21:48
Помогаю со студенческими работами здесь

Удалить из массива все элементы, в которых есть по две одинаковых цифры
Дан массив целых чисел (n=10), заполненный слуйчайным образом числами из промежутка . Удалить из...

Из каждой строки удалить все цифры, и не содержащие цифр строки записать в новый список
Здравствуйте. Я полнейший нуб в прологе, заранее извиняюсь, не могли бы вы мне подсказать, как...

Вывести на экран все трехзначные числа, сумма первой и третьей цифры которых больше второй цифры.
1. Построить блок-схему и решить задачу, используя цикл с предусловием: Вывести на экран все...

Вывести на экран все трехзначные числа, сумма первой и третьей цифры которых больше второй цифры.
Вывести на экран все трехзначные числа, сумма первой и третьей цифры которых больше второй...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru