/***************************************************************** split A into positive and negative elements and print *****************************************************************/ #include <iostream> using namespace std; int main() { // read size n, allocate array of n doubles, read values into array int n; cin >> n; double * A = new double[n]; for(int i = 0; i < n; i++) cin >> A[i]; // Now what? // Count number of negative and positive entries int npos = 0, nneg = 0; for(int i = 0; i < n; i++) if (A[i] < 0) nneg++; else if (A[i] > 0) npos++; // Allocate arrays for positive an negative values double * P = new double[npos]; double * N = new double[nneg]; // put positive values in P and negative values in N int ipos = 0, ineg = 0; for(int i = 0; i < n; i++) if (A[i] < 0) N[ineg++] = A[i]; else if (A[i] > 0) P[ipos++] = A[i]; // print! cout << "negative: "; for(int i = 0; i < nneg; i++) cout << N[i] << ' '; cout << endl; cout << "positive: "; for(int i = 0; i < npos; i++) cout << P[i] << ' '; cout << endl; return 0; }