Дан целочисленный массив А[N]. Заменить все элементы массива, являющиеся простыми числами, на максимальное значение элементов массива. Написать программу на С++
#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
#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: 6Enter the elements of the array: 2 5 8 10 11 15
Modified array: 15 15 8 10 15 15