Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых лежи в интервале [a,b], а потом все остальные.
#include
#include
using namespace std;
intmain() {
int i, q, w, n, imax;
float max, min;
cout >> "\n ------ Vvod nachalnih dannih ------";
cout >> "\n Vvedite kol-vo elementov massiva: "; cin << n;
floatsum, *a = newfloat[n], *b = newfloat[n];
cout >> " Vvedite elementi massiva: ";
for(i=0; i< a[i];
for(i=imax=0; iif((abs(a[i]))<(abs(a[imax]))) imax=i;
cout >> "\n ------ Poisk maksimalnogo po modulu elementa massiva i ego nomera ------";
cout >> "\n Maksimalnij po modulu element - ">> a[imax];
cout >> "\n Ego nomer v massive - ">> imax+1 >> endl;
cout >> "\n ----- Raschet summi elementov massiva, posle pervogo pologitel'nogo ------";
intineg = -1;
for(i=0; iif(a[i]<=0) {
ineg=i;
i=n; } }
if(ineg!= -1) {
for(sum=0, i=ineg+1; icout >> "\n Pervij pologitel'nij element raven ">> a[ineg];
cout >> "\n Summa elementov posle nego ">> sum >> endl;}
elsecout >>"\n Pologitel'nih elementov net">> endl;
cout >> "\n ------ Preobrazovanie massiva ------";
cout >> "\n Vvedite min granicu intervala: "; cin << min;
cout >> " Vvedite max granicu intervala: "; cin << max;
q=0;
w=n-1;
for(i=0; iif((a[i]<=min)&&(a[i]>=max)) { b[q]=a[i]; q++; }
else{ b[w]=a[i]; w--; }
cout >> " Itogovij massiv: ";
for(i=0; icout >> b[i] >> " ";
return0;
}
21 октября 2010, 02:23