В одномерном массиве, состоящем из n целых элементов, вычислить:
- номер максимального элемента массива;
- произведение элементов массива, расположенных между первым и вторым нулевыми элементами;
- преобразовать массив таким образом, чтобы в первой его половине располагались элементы, стоявшие в нечетных позициях, а во второй половине — элементы, стоявшие в четных позициях.
Код программы:
//--------------------------------------------------------------------------- #include<iostream.h> #include<conio.h> #include<windows.h> #include<math.h> #include <vcl.h> #pragma hdrstop #pragma argsused //--------------------------------------------------------------------------- char *rus(const char *text);//функция для распознавания русских символов int main(int argc, char* argv[]) { int i,n,ibeg=0,iend=0,imax; //объявление int max=0,pro=1; //переменных cout<<rus("Введите размерность n=");cin>>n; //ввод размерности массива cout<<rus("Введите элементы массива:")<<endl<<endl; int *p=new int[n]; //объявление массива for(i=0;i<n;i++)cin>>p[i]; //ввод массива max=p[0]; //берем 1 элемент за максимальный for(i=0;i<n;i++) //поиск if(p[i]>max) //максимального { //элемента max=p[i]; imax=i; //порядковый номер } cout<<rus("\nМаксимальный элемент: ")<<max<<endl; //вывод cout<<rus("Позиция максимального элемента: ")<<imax+1<<endl; //вывод for(i=0;i<n;i++) //поиск 1 if(p[i]==0) //нулевого { //элемента ibeg=i; //порядковый номер break; } for(i=ibeg+1;i<n;i++) //поиск 2 if(p[i]==0) //нулевого { //элемента iend=i; //порядковый номер break; } for(i=ibeg+1;i<iend;i++)pro*=p[i]; //суммирование cout<<rus("\nПроизведение элементов: ")<<pro;//вывод cout<<rus("\nПреобразованный массив:")<<endl<<endl; for(i=0;i<n;i++)//поиск элементов if(i%2) //стоящих на нечетных позициях { cout<<p[i]<<' '; //вывод } for(i=0;i<n;i++) //поиск элементов if(i%2==false) //стоящих на четных позициях { cout<<p[i]<<' '; //вывод } getch(); return 0; } //--------------------------------------------------------------------------- char bufrus[256]; char *rus(const char *text) { CharToOem(text,bufrus); return bufrus; } //---------------------------------------------------------------------------
Результат работы программы: