Дан целочисленный массив А[N]. Заменить все элементы массива, являющиеся простыми числами, на максимальное значение элементов массива. Написать программу на С++

31 Авг 2019 в 08:41
409 +1
1
Ответы
1
#include <iostream>
#include <cmath>
bool isPrime(int num) {
if (num <= 1) {
return false;
}
for (int i = 2; i <= sqrt(num); i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
int main() {
int N;
std::cout << "Enter the size of the array: ";
std::cin >> N;
int A[N];
std::cout << "Enter the elements of the array: ";
for (int i = 0; i < N; i++) {
std::cin >> A[i];
}
int max = A[0];
for (int i = 1; i < N; i++) {
if (A[i] > max) {
max = A[i];
}
}
for (int i = 0; i < N; i++) {
if (isPrime(A[i])) {
A[i] = max;
}
}
std::cout << "Modified array: ";
for (int i = 0; i < N; i++) {
std::cout << A[i] << " ";
}
return 0;
}

Пример работы программы:

Enter the size of the array: 6
Enter the elements of the array: 2 5 8 10 11 15
Modified array: 15 15 8 10 15 15
20 Апр 2024 в 05:27
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир