Текст программы. Результаты выполнения программы

Результаты выполнения программы


2. Ввести массив А(N). Найти максимальный элемент массива. Нечетные элементы массива разделить на максимальный элемент. Вывести полученный массив.

Текст программы

#include <iostream>

#include <cmath>

#include <iomanip>

using namespace std;

void inp_arr(float *a, int na);//ввод массива с консоли

void out_arr(float *a, int na);//вывод массива на консоль

int imax(float *a, int na);//поиск индекса максимального элемента

int main()

{

setlocale(0, ""); // поддержка кириллицы

int N;

cout<<"Ввести размер массива: ";cin>>N;

float *A= new float [N]; // динамический массив

inp_arr(A,N);//инициализация массива с консоли

cout << "Дан массив" << endl;

out_arr(A,N);// вывод массива

int im=imax(A,N);// im - интдекс максимального элемента

float m=A[im];

// изменяем исходный массив

for(int i=0;i<N;i++)

if (fmod(A[i],2)!=0)

A[i]/=m;

// Вывод результатов

cout << "максимальный элемент А[" << im+1 << "]= " << m << endl << endl;

cout << "Преобразованный массив" << endl;

out_arr(A,N);// вывод массива

system("pause");

return 0;

}

// ввод элементов массива

void inp_arr(float *a, int na)

{

cout << "Ввести " << na << " элементов массива" << endl;

for(int i=0;i<na;i++)

{cout << i+1 <<':'; cin >> a[i];}

cout << endl;

return;

}

// вывод элементов массива

void out_arr(float *a, int na)

{

for(int i=0;i<na;i++)

cout << "\t" << a[i];

cout << endl<<endl;

return;

}

// поиск индекса максимального элемента

int imax(float *a, int na)

{

float m=a[0]; int im=0;

for(int i=1;i<na;i++)

if (m<a[i]) {m=a[i];im=i;}

return im;

}


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: