Вариант 12

В одномерном массиве, состоящем из n вещественных элементов, вычислить:

  1. номер максимального по модулю элемента массива;
  2. сумму элементов массива, расположенных после первого положительного элемента;
  3. преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых лежит в интервале [а,b], а потом — все остальные.

Код программы:

//---------------------------------------------------------------------------
#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,imax;
 float max=0,sum=0,a,b;
 cout<<rus("Введите размерность n=");cin>>n;
 cout<<rus("Введите интервал")<<endl;
 cout<<rus("\na=");cin>>a;
 cout<<rus("b=");cin>>b;
 cout<<rus("\nВведите элементы массива:")<<endl<<endl;
 float *p=new float[n];
 for(i=0;i<n;i++)cin>>p[i];
 for(i=0;i<n;i++)
 if(fabs(p[i])>fabs(max))
  {
   max=p[i];
   imax=i;
  }
 cout<<rus("\nМаксимальный по модулю элемент: ")<<max<<endl;
 cout<<rus("Позиция максимального по модулю элемента: ")<<imax+1<<endl;
 for(i=0;i<n;i++)
 if(p[i]>0)
  {
   ibeg=i;
   break;
  }
 for(i=ibeg+1;i<n;i++)sum+=p[i];
 cout<<rus("\nСумма элементов расположенных после 1-го положительного элемента: ")<<sum;
 cout<<rus("\nПреобразованный массив:")<<endl<<endl;
 for(i=0;i<n;i++)
 if((int(p[i])>=a)&&(int(p[i])<=b))
  {
   cout<<p[i]<<' ';
  }
 for(i=0;i<n;i++)
 if((int(p[i])<a)||(int(p[i])>b))
  {
   cout<<p[i]<<' ';
  }
 getch();
 return 0;
}
//---------------------------------------------------------------------------
char bufrus[256];
char *rus(const char *text)
 {
  CharToOem(text,bufrus);
  return bufrus;
 }
//---------------------------------------------------------------------------

Результат работы программы:

Результат работы. Двенадцатый вариант. Одномерные массивы и указатели

Вариант 11
Вариант 13
error: Content is protected !!
Adblock
detector