1 / 1 / 0
Регистрация: 04.04.2012
Сообщений: 14

Найти простое число в массиве

28.05.2012, 22:15. Показов 15705. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как в С++ в массиве найти ПРОСТОЕ число (которое делится только на себя и на единицу) ?
Буду очень благодарен
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.05.2012, 22:15
Ответы с готовыми решениями:

Найти максимальное простое число в массиве
Найти максимальное простое число в массиве. Найти минимальный полный квадрат среди положительных чисел в массиве?

В массиве из целых чисел найти минимальное простое число
Вообщем задача звучит так: "В массиве из целых чисел найти минимальное простое число." Все что я могу написать так это: ...

Дано простое число. Составить функцию, которая будет находить следующее за ним простое число.
6.2.2. Помогите, пожалуйста, решить задачи в С++ с помощью функций. Дано простое число. Составить функцию, которая будет находить...

12
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
28.05.2012, 22:16
Цитата Сообщение от swoop Посмотреть сообщение
Просто подскажите
воспользуйтесь поиском
Большая коллекция решенных задач
1
11 / 11 / 2
Регистрация: 26.05.2012
Сообщений: 54
28.05.2012, 22:17
простым перебором
1
1 / 1 / 0
Регистрация: 04.04.2012
Сообщений: 14
28.05.2012, 22:20  [ТС]
Jeron95, можно поподробнее про перебор ?
0
 Аватар для Andrey.K
348 / 269 / 128
Регистрация: 14.11.2010
Сообщений: 482
28.05.2012, 22:24
вот тут находит простые числа в функции, и последнее число указывает сколько их. Там вроде до 10000 подсчет идет. Переделаешь под массив и будет всё хорошо.
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
#include <iostream>
#include <conio.h>
using namespace std;
 bool Simple (int &N)
 {
      bool rez=true;
           for(int k=2;k<=N/2;k++)
           if (N%k==0) rez=false;
           return rez;
           }
                           
                      
                      int main()
                      {
                          int N=10,m=0;
                          for (int i=N;i<=10000;i++)
                          {
                              if (Simple(i)==true){m++;cout<<i<<" ";
}
                          }
                          cout<<m<<endl;
getch();
return 0;
}
1
Модератор
Эксперт по электронике
8962 / 6728 / 921
Регистрация: 14.02.2011
Сообщений: 23,751
28.05.2012, 22:27
C++
1
2
3
4
5
6
7
8
bool no_sample= false;
for(int i=n/2; i>1;i--)
   if(no_sample=(n%i==0))
        break;
 if( no_sample)
    // здесь что то делаем если число не простое
  else  
 // здесь что то делаем если число  простое
1
1 / 1 / 0
Регистрация: 04.04.2012
Сообщений: 14
28.05.2012, 22:30  [ТС]
Спасибо большое.
Теперь осталось допридумать как найти среднее арифметическое элементов массива с первого до первого простого числа, и все будет замечательно
0
Модератор
Эксперт по электронике
8962 / 6728 / 921
Регистрация: 14.02.2011
Сообщений: 23,751
28.05.2012, 22:34
Цитата Сообщение от Andrey.K Посмотреть сообщение
for(int k=2;k<=N/2;k++)
if (N%k==0) rez=false;
а нахрена цикл крутить если мы уже нашли делитель?

Добавлено через 2 минуты
Цитата Сообщение от swoop Посмотреть сообщение
еперь осталось допридумать как найти среднее арифметическое элементов массива с первого до первого простого числа,
тебе не понятно
как найти среднее арифметическое?
как запомнить положение первого простого числа?
что будем делать если первый элемент массива и будет простым числом?
Цитата Сообщение от swoop Посмотреть сообщение
Спасибо большое.
Кнопочка есть
2
1 / 1 / 0
Регистрация: 04.04.2012
Сообщений: 14
28.05.2012, 22:38  [ТС]
Кнопочки всем нажал
Как я понимаю, если простое число первый элемент, то среднее арифметическое и есть значение этого первого элемента.
А как запомнить положение первого простого числа ? И как считать вообще ?

P.S. сейчас скину условие задачи и свои наработки

Добавлено через 1 минуту
Из положительных значений двух целочисленных массивов различной размерности сформировать общий массив. Найти среднее арифметическое элементов, расположенных в массиве до первого простого числа. Создать функции для вычисле-ния среднего значения и определения простого числа.

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
53
54
#include <iostream>
using namespace std;
int main()
{
    int n,n1,*X,*Y,*Z,k(0),k1(0),sum_str,sr_arif;
    cout<<"Vvedite razmernost massivov: ";
    cin>>n>>n1;
    X=new int [n];
    Y=new int [n1];
    cout<<"Vvedite elementy massiva X: ";
    for(int i=0;i<n;i++)
    {
        cin>>X[i];
        if(X[i]>0)
            k++;
    }
    cout<<"Vvedite lementy massiva Y: ";
    for(int i=0;i<n1;i++)
    {
        cin>>Y[i];
        if(Y[i]>0)
            k1++;
    }
    Z=new int [k+k1];
    int j(0);
    for(int i=0;i<n;i++)
    {
        if(X[i]>0)
        {Z[j]=X[i];
        j++;
        }
    }
    for(int i=0;i<n1;i++)
    {
        if(Y[i]>0)
        {Z[j]=Y[i];
        j++;
        }
    }
    cout<<"Massiv Z:\n";    
        for(int i=0;i<k+k1;i++)
            cout<<Z[]<<" ";
        cout<<endl;
       for (int i=2; i<k+k1; i++)
       {
       if ((k+k1)%i == 0) count++;
       }
 
    if (count == 0 )
       printf ("prostoe chislo\n");
    for(int i=0;i<k+k1;i++)
            cout<<Z[i];
        cout<<endl;
}
0
Модератор
Эксперт по электронике
8962 / 6728 / 921
Регистрация: 14.02.2011
Сообщений: 23,751
28.05.2012, 22:57
Цитата Сообщение от swoop Посмотреть сообщение
for(int i=0;i<k+k1;i++)
cout<<Z[]<<" ";
надеюсь это опечатка?

Цитата Сообщение от swoop Посмотреть сообщение
int j(0);
лучше(читабельней) использовать =
до 44 строчки я тебя понимал
дальше перестал
Цитата Сообщение от swoop Посмотреть сообщение
if ((k+k1)%i == 0) count++;
что ты этим хотел сказать??

поиск простого числа выделяешь в отдельную функцию
которая вернет истина если число простое и ложь если не простое(можешь наоборот)
дальше в цикле
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int count=-1;// если нет простых чисел
for(int i=0;i<k+k1;i++)
     if(MyFunk(Z[i]))
        {
         count=i;// запоминаем положение первого простого числа
          break;// дальше крутить незачем
          }
  if(count==-1)
         return ; // простых нет вываливаемся
 
  int sum=0;
    for(int i=0; i<count+1;i++)
        sum+=Z[i];
 int sr=sum/(count+1);
1
1 / 1 / 0
Регистрация: 04.04.2012
Сообщений: 14
28.05.2012, 23:04  [ТС]
Цитата Сообщение от ValeryS Посмотреть сообщение
Сообщение от swoop
if ((k+k1)%i == 0) count++;
что ты этим хотел сказать??
Если число делится без остатка, о оно непростое. Примерно так хотел сказать

Добавлено через 3 минуты
Цитата Сообщение от ValeryS Посмотреть сообщение
Сообщение от swoop
if ((k+k1)%i == 0) count++;
что ты этим хотел сказать??
Хотел сказать, что если число без остатка делится...
0
Модератор
Эксперт по электронике
8962 / 6728 / 921
Регистрация: 14.02.2011
Сообщений: 23,751
28.05.2012, 23:05
Цитата Сообщение от swoop Посмотреть сообщение
Если число делится без остатка, о оно непростое. Примерно так хотел сказать
ну правильно хотел
а что сказал?
Цитата Сообщение от swoop Посмотреть сообщение
if ((k+k1)%i == 0)
ты делишь размер массива на итерацию цикла
где значения элемента массива то?
0
1 / 1 / 0
Регистрация: 04.04.2012
Сообщений: 14
28.05.2012, 23:08  [ТС]
Да я С++ не особо хорошо знаю, вот и намудрил. Пытаюсь разобраться... Пока что туговато...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.05.2012, 23:08
Помогаю со студенческими работами здесь

Дано простое число. Составить функцию, которая будет находить следующее за ним простое число
Дано простое число. Составить функцию, которая будет находить следующее за ним простое число.

Дано простое число. Составить функцию, которая будет находить следующее за ним простое число
Дано простое число. Составить функцию, которая будет находить следующее за ним простое число

Дано простое число. Составить функцию,которая будет находить следующее за ним простое число.
дано простое число.составить функцию,которая будет находить следующее за ним простое число.

Поменять местами в массиве последнее простое число и первое совершенное
Задан массив X(m) целых чисел.Поменять местами в массиве последнее простое число первое совершенное.Предусмотреть случай,что массив может...

Поменять местами в массиве последнее простое число и первое совершенное
Добрый вечер всем!!! Наконец на парах начали разбирать одномерные массивы и вотже столкнулась с практическим заданием. Задан массив Х(m)...


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

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

Новые блоги и статьи
Создаем RESTful API с Laravel
Jason-Webb 28.04.2025
REST (Representational State Transfer) — это архитектурный стиль, который определяет набор принципов для создания веб-сервисов. Этот подход к построению API стал стандартом де-факто в современной. . .
Дженерики в C# - продвинутые техники
stackOverflow 28.04.2025
История дженериков началась с простой идеи — создать механизм для разработки типобезопасного кода без потери производительности. До их появления программисты использовали неуклюжие преобразования. . .
Тестирование в Python: PyTest, Mock и лучшие практики TDD
py-thonny 28.04.2025
Тестирование кода играет весомую роль в жизненном цикле разработки программного обеспечения. Для разработчиков Python существует богатый выбор инструментов, позволяющих создавать надёжные и. . .
Работа с PDF в Java с iText
Javaican 28.04.2025
Среди всех форматов PDF (Portable Document Format) заслуженно занимает особое место. Этот формат, созданный компанией Adobe, превратился в универсальный стандарт для обмена документами, не зависящий. . .
Динамические массивы в C++ - создание и использование
NullReferenced 27.04.2025
Динамические массивы представляют собой один из фундаментальных инструментов программирования на C++, позволяющий создавать структуры данных, размер которых определяется во время выполнения. . .
Асинхронный JavaScript: Промисы, Async/Await и Fetch API
Reangularity 27.04.2025
Пользователь заходит на веб-страницу, нажимает кнопку и. . . ничего не происходит. Сайт словно замер. Через несколько секунд всё внезапно оживает, но пользователь уже успел закрыть вкладку. Знакомая. . .
Management on GitLab and repository management in Visual Studio code
jigi33 27.04.2025
- repo management on GitLab - CI/ CD in GitLab - VCS repository management in Visual Studio code (see attachments)
Kanban или Scrum - что выбрать?
EggHead 27.04.2025
Kanban и Scrum — уже много лет удерживают лидирующие позиции среди гибких подходов. Руководители проектов и команды разработчиков то и дело сталкиваются с дилеммой: какой из этих двух методов выбрать. . .
Кастомные Middleware на C# в ASP.NET Core
UnmanagedCoder 27.04.2025
Разработка веб-приложений сегодня мало напоминает монолитное программирование прошлых лет. На смену громоздким блокам кода пришла модульная архитектура, где каждый компонент выполняет строго. . .
Анализ и линтинг кода JavaScript: ESLint, Prettier и JSHint
run.dev 26.04.2025
JavaScript прошёл долгий путь от простого языка для анимации веб-страниц до основы современной веб-разработки. С ростом сложности приложений, увеличением кодовых баз и масштабированием команд. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru