Водномерном массиве состоящем из n вещественных элементов вычислить:
1. сумму элементов массива с нечетными номерами.
2. сумму элементов массива, расположенных между первым и отрицательными элементами.
сжать массив удалив из него все элементы, модуль которых не превышает 1.
на с++

kseni23112001 kseni23112001    2   24.12.2019 18:08    2

Ответы
Катя444411 Катя444411  27.08.2020 18:50

===== С++ 17 =====

#include <iostream>

using namespace std;

int main()

{

   int n;

   cin >> n;

   double *a = new double[n];

   srand(time(NULL));

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

   {

       a[i] = rand() * 10.0 / RAND_MAX - 5;

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

   }

   cout << endl;

   // - 1 -

   double s = 0;

   for(int i = 0; i < n; i += 2)

       s += a[i];

   cout << "Сумма элементов с нечетными номерами равна " << s << endl;

   // - 2 -

   int k = -1;

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

       if(a[i] < 0)

       {

           k = i;

           break;

       }

   if(k < 1)

       cout << "Нет отрицательных элементов\n";

   else

   {

       s = 0;

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

           s += a[i];

       cout << "Сумма между первым и первым отрицательным элементом равна "

               << s << endl;

   }

   // - 3 -

   k = 0;

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

       if(abs(a[i]) <= 1)

           k++;

   if(k > 0)

   {

       k = n - k;

       double *b = new double[k];

       for(int i = 0, j = 0; i < n; i++)

           if(abs(a[i]) > 1)

           {

               b[j] = a[i];

               j ++;

           }

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

           cout << b[i] << " ";

       cout << endl;

       delete [] b;

   }

   else

       cout << "Нечего удалять\n";

   delete [] a;

   return 0;

}


Водномерном массиве состоящем из n вещественных элементов вычислить: 1. сумму элементов массива с н
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика