Написать программу ** языке Си 1)В одномерном массиве, который состоит из N...

0 голосов
26 просмотров

Написать программу на языке Си 1)В одномерном массиве, который состоит из N действительных элементов, вычислить: • суму положительных элементов массива; • произведение элементов массива, размещённых между максимальным по модулю и минимальным по модулем элементами. 2)Задан массив X (x1, x2, …, x16) действительных чисел. Найти минимальный элемент массиву Z, элемент которого z1 = x1 + x16, z2 = x2 + x15, …, zm = x8 + x9 3)Задан вектор А. Получить два других вектора В і С, которые содержат элементы вектора A, вычисленные по такому правилу: bі = 3•aі; cі =4•aі.


Другие предметы (160 баллов) | 26 просмотров
Дан 1 ответ
0 голосов

1) #include  

#include  

#include  

using namespace std;  

 

int main()  

{  

 setlocale(LC_ALL, "Russian");  

 srand(static_cast (time(NULL)));  

 int n = rand() % 16 + 5;  

 double * a = new double [ n ];  

 cout << "Дан массив [" << n << "]:" << endl;  </p>

 cout.precision(2);  

 double s = 0, p = 1;  

 int imin = 0, imax = 0;  

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

 {  

   bool f;  

   do  

   {  

     a[ i ] = static_cast (rand() % 1999 - 999) / 100;  

     int j = i - 1;  

     f = false;  

     while (!f && j >= 0)  

     {  

       f = a[ i ] == a[ j ];  

       j--;  

     }  

   } while (f);  

   cout << fixed << setw(8) << a[ i ];  </p>

   if (a[ i ] > 0)  

     s += a[ i ];  

   if (fabs(a[ i ]) < fabs(a[ imin ]))  

     imin = i;  

   if (fabs(a[ i ]) > fabs(a[ imax ]))  

     imax = i;  

 }  

 cout << endl;  </p>

 if (!s)  

   cout << "Положительных элементов нет" << endl;  </p>

 else  

   cout << "Сумма положительных элементов: " << fixed << s << endl;  </p>

 if (abs(imin - imax) < 2)  

   cout << "Между максимальным по модулю и минимальным по модулю нет элементов";  </p>

 else  

 {  

   if (imin > imax)  

   {  

     imin ^= imax;  

     imax ^= imin;  

     imin ^= imax;  

   }  

   for (int i = imin + 1; i < imax; i++)  

     p *= a[ i ];  

   cout.precision(6);  

   cout << "Произведение элементов между макс. и мин. по модулю элементами: "  </p>

        << fixed << p;  </p>

 }  

 cin.get();  

 delete [ ] a;  

 return 0;  

}

2) прости не могу ответить


(40 баллов)