Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/78: Рейтинг темы: голосов - 78, средняя оценка - 4.95
1 / 1 / 0
Регистрация: 04.04.2012
Сообщений: 14

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

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

Студворк — интернет-сервис помощи студентам
Как в С++ в массиве найти ПРОСТОЕ число (которое делится только на себя и на единицу) ?
Буду очень благодарен
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
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
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
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
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
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
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
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
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
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru