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

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

Войти
Регистрация
Восстановить пароль
 
DEMON_DIP
Сообщений: n/a
#1

Простое число и массивы - C++

25.10.2009, 11:01. Просмотров 535. Ответов 4
Метки нет (Все метки)

есть задача: Дан массив n целых чисел. Если в массиве есть хотя бы одно простое число, то создается новый массив, в котором все члены массива (кроме простого числа) включены дважды. В противном случае массив не создается.
Как определить есть простое чило в массиве впринципе понятно, искать делители каждого элемента массива, и если их 2 то он является простым числом. А вот как создать второй массив с повторением?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.10.2009, 11:01     Простое число и массивы
Посмотрите здесь:

Простое число(проверьте пожалуйста) C++
простое число C++
Простое число C++
простое число C++
простое число в заданном диапазоне C++
C++ простое число
Найти простое число в массиве C++
Объясните проверку на простое число C++
Простое число C++
итое простое число C++
Необходимо вывести строку prime, если число простое, или composite, если число составное C++
C++ Простое или составное число

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fasked
Эксперт C++
 Аватар для fasked
4929 / 2509 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
25.10.2009, 15:57     Простое число и массивы #2
Общая идея такова:
mas - массив исходный;
rmas - новый массив;
smas - массив с простыми числами.
Все найденные простые числа записываются в массив smas, далее все значения из mas поочередно сравниваются со всеми значениями smas.
если совпадение найдено, то переходим к следующему элементу mas, если не найдено дублируем текущий элемент mas в rmas.

Например, вот так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
for ( int i = 0; i < size_mas; i++ )
{
    for ( int j = 0; j < size_smas; j++ )
    {
        if ( mas[i] == smas[j] )
        {
            flag = false;
            break;
        }
        else
            flag = true;
    }
    
    if ( flag == true )
    {
        rmas[k] = mas[i];
        rmas[k+1] = mas[i];
        k += 2;
    }
}
niXman
Эксперт C++
 Аватар для niXman
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
25.10.2009, 16:09     Простое число и массивы #3
Вот не понимаю! Почему никогда не указывают язык разработки?!
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
25.10.2009, 16:41     Простое число и массивы #4
действительно если вам нужно на СИ то программа будет как всегда с тучей циклов с выводом типа printf() и тому подобное если же С++ то можно и контейнеры подключить и вывод вида std::cout , ну и стандартные алгоритмы из STL.
DEMON_DIP
Сообщений: n/a
25.10.2009, 20:28     Простое число и массивы #5
нужен язык с++, сорри что не указал
Спасибо, но уже разобрался сам.
Yandex
Объявления
25.10.2009, 20:28     Простое число и массивы
Ответ Создать тему
Опции темы

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