Найти наибольший элемент из элементов одномерного массива, имеющих четный номер.
Определить, является ли он единственным
Ответы
Відповідь:
C++ code:
#include <iostream>
#include <cstdlib>
#include <ctime>
typedef unsigned int unsize;
void rand_arr(int *arr,const unsize size){
for(unsize i = 0; i < size; i++){
*(arr + i) = rand() % 15 + 1;
}
}
void print_arr(int *arr,const unsize size){
for(unsize i = 0; i < size; i++){
std::cout << *(arr + i) << "\t";
}
std::cout << std::endl;
}
int max_even_elements(int *arr,const unsize size){
int max = arr[1];
for(unsize i = 0; i < size; i++){
if(!(i % 2 == 0)){
if(arr[i] > max){
max = arr[i];
}
}
}
return max;
}
bool unique_element(int *arr,const unsize size,int element){
unsize counter = 0;
for(unsize i = 0; i < size; i++){
if(arr[i] == element){
counter++;
}
}
return counter == 1;
}
int main(){
srand(time(NULL));
unsize size;
std::cin >> size;
int *arr = new int[size];
rand_arr(arr,size);
print_arr(arr,size);
std::cout << "Max: " << max_even_elements(arr,size) << std::endl;
if(unique_element(arr,size,max_even_elements(arr,size))){
std::cout << "Unique" << std::endl;
}
else{
std::cout << "Not unique" << std::endl;
}
delete[] arr;
return 0;
}