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

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

Войти
Регистрация
Восстановить пароль
 
nikita7991
0 / 0 / 0
Регистрация: 16.04.2013
Сообщений: 120
#1

Функция для удаления из массива простых чисел - C++

07.05.2014, 14:13. Просмотров 436. Ответов 4
Метки нет (Все метки)

Написать функцию которая удаляет все простые числа из массива X[N].И вывести массив без простых чисел.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.05.2014, 14:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция для удаления из массива простых чисел (C++):

Функция для простых чисел - C++
Найти все трехзначные простые числа, определив функцию, позволяющую распознавать простые числа.

Функция для поиска ближайших простых чисел - C++
Ув. товарищи программисты , нужна помощь. Требуется функция с помощью которой можно найти 2 ближайших ПРОСТЫХ числа к веденному числу. ...

Функция для удаления строки из двумерного массива - C++
Массив должен передаваться в функцию как параметр. Написать функцию для удаления строки из двумерного массива. Оставшиеся строки должны...

Удалить все простые числа и найти среднее арифметическое до и после удаления простых чисел - C++
Помогите пожалуйста разобрать ошибки и дописать программу. Ошибки: Функции должны возвращать значение Программа: Удалить все простые...

функция поиска простых чисел - C++
не могу сделать функции для поиска простых чисел, вот код функции int prost(int x) { if (x/2) return true; else ...

Функция определения простых чисел - C++
Здравствуйте! Это функция определения простых чисел. bool isSimple(int num) { if (num < 2) return false; else { for...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
07.05.2014, 14:23 #2
nikita7991,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<iostream>
#include<cmath>
#include<vector>
#include<iterator>
#include<algorithm>
bool prime(int number)
{
    for(int i=2; i<=sqrt(number); ++i)
        if(number%i==0)return false;
    return true;
}
int main()
{
    std::vector <int> ivec = {1,2,3,6,3,8,4,7,5,8,4};
    std::copy(ivec.begin(),ivec.end(),std::ostream_iterator <int> (std::cout," "));
    ivec.erase(std::remove_if(ivec.begin(),ivec.end(),prime),ivec.end());
    std::cout<<"\nnew: ";
    std::copy(ivec.begin(),ivec.end(),std::ostream_iterator <int> (std::cout," "));
}
_script_
169 / 137 / 34
Регистрация: 01.05.2012
Сообщений: 414
07.05.2014, 14:59 #3
cooller, автору нужно, скорее всего, написать самому функцию которая удалит простые числа, а не вызвать стандартную функцию, которая это сделает.
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
07.05.2014, 15:01 #4
Цитата Сообщение от _script_ Посмотреть сообщение
автору нужно, скорее всего, написать самому функцию
вот пусть сам и пишет
_script_
169 / 137 / 34
Регистрация: 01.05.2012
Сообщений: 414
07.05.2014, 15:18 #5
nikita7991, Вот так вот можно сделать)
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
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
#include <math.h>
 
using namespace std;
 
//Проверка на простоту
bool isPrime(int n)
{
    for(int i=2; i<=sqrt(n); i++)
        if(n%i==0)
            return false;
    return true;
}
 
//Функция удаления простых чисел
void RemovePrime(int *A,int &n)
{
    int *temp=new int[n];
    int k=0;
    for (int i=0; i+k<n;)
        if (isPrime(A[i+k]))
            k++;
        else
        {
            temp[i]=A[i+k];
            i++;
        }
    n-=k;
    delete []A;
    A=new int[n];
    for (int i=0; i<n; i++)
        A[i]=temp[i];
}
 
int main()
{
    int n;
    cout <<"n=";
    cin >> n;
    int *A=new int[n];
    cout <<"Enter array: ";
    for (int i=0; i<n; i++)
        cin>>A[i];
 
    RemovePrime(A,n);
 
    cout <<"\nNew array: ";
    for (int i=0; i<n; i++)
        cout <<A[i]<<' ';
 
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.05.2014, 15:18
Привет! Вот еще темы с ответами:

Функция по нахождению простых чисел на интервале - C++
Дан определенный интервал надо чтобы находила простые числа и выводила на экран как решить

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

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

Вычислить количество простых чисел среди положительных чисел массива - C++
Дан массив целых положительных и отрицательных чисел в количестве меньше или равно 64 . А требуется , Вычислить количество простых чисел...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
07.05.2014, 15:18
Ответ Создать тему
Опции темы

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