@jestev
Люблю iOS

Как совместить рандомное заполнение массива и поиск простого числа в нём?

Имеется программа, в которой есть функция поиска простых чисел. Если с одним числом все предельно просто, то как искать простые числа в массиве? Вот код. Знаю, что функция неправильная, но что нужно изменить, чтобы был поиск простого числа именно в массиве?
#include "stdafx.h"
#include <iostream> 
#include <cstdlib>
#include <ctime>
using namespace std;

int is_prime(int a[5])
{
	
	if (a[5] == 1) return 1;
	int number = 0;
	for (int i = 2; i <= a[5]; i++)
		if (a[5] %i == 0) number++;
	if (number == 1) return 1;
	else return 0;
}

int main()
{
	srand(time(NULL));
	int a[5];
	for (int k = 0; k < 5; k++) {
		a[k] = rand() % 21;
		cout << a[k] << "\n";
	}
	int c = is_prime(a);
    if (c == 1) cout << "is prime";
	else cout << "is not prime";
    return 0;
	system("pause");
}
  • Вопрос задан
  • 149 просмотров
Пригласить эксперта
Ответы на вопрос 1
@res2001
Developer, ex-admin
1.У вас в is_prime должно быть 2 вложенных цикла: 1 цикл по элементам массива, второй (вложенный) от 2 до a[i] - проверка на простое число. Сейчас - только один и тот не правильный (из-за индексации).
2.И разберитесь с индексацией массива, похоже вы не понимаете, что делаете.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы