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

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

Восстановить пароль Регистрация
 
Klaybern
0 / 0 / 0
Регистрация: 30.10.2014
Сообщений: 13
20.11.2014, 00:08     Удалить из массива все элементы, в записи которых есть заданная цифра #1
дан одномерный массив целых чисел заполненный случайным образом числами из промежутка[-a;b] удалить из него все элементы в записи которых есть заданная цифра.
Hапишите полный текст программы пожалуйста. Спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2014, 00:08     Удалить из массива все элементы, в записи которых есть заданная цифра
Посмотрите здесь:

Удалить все строки, в которых есть хотя бы одна цифра C++
C++ удалить все элементы в которых есть цифра 3
Удалить из массива все элементы,в записи которых все цифры различны. C++
C++ Удалить из массива все элементы,в записи которых все цифры различны.
Удалить из массива элементы, в записи которых все цифры различны C++
C++ Удалить из целочисленного одномерного массива все элементы, в записи которых все цифры различны
Удалить из массива все элементы, последняя цифра которых равна заданному числу D C++
C++ Удалить из массива числа – палиндромы, в которых есть хотя бы одна нечетная цифра

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Issues
429 / 364 / 37
Регистрация: 06.08.2012
Сообщений: 961
20.11.2014, 01:22     Удалить из массива все элементы, в записи которых есть заданная цифра #2
Klaybern,
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
39
40
41
#include <algorithm>
#include <iostream>
#include <random>
#include <vector>
#include <string>
#include <ctime>
 
int main()
{
    const int N = 10;
 
    const int A = 50;
    const int B = 50;
 
    std::vector<int> vec(N);
 
    srand((unsigned int)time(NULL));
    std::generate(vec.begin(), vec.end(), [&]() { return rand() % (A + B + 1) - A; });
 
    std::cout << "before: ";
    for (auto i : vec) { std::cout << i << ' '; }
 
    auto FindDigit = [](int n, int digit) {
        for (; n != 0; n /= 10) {
            if (n % 10 == digit)
                return true;
        }
        return false;
    };
 
    int erase_digit = 1;
 
    auto new_vec_end = (std::remove_if(vec.begin(), vec.end(), [&](int i) { 
        return FindDigit(i, erase_digit); 
    } ));
    
    std::cout << "\nafter : ";
    for (auto i = vec.begin(); i != new_vec_end; ++i) { std::cout << *i << ' '; }
 
    return 0;
}
Yandex
Объявления
20.11.2014, 01:22     Удалить из массива все элементы, в записи которых есть заданная цифра
Ответ Создать тему
Опции темы

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