М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Love2111
Love2111
04.09.2020 02:23 •  Информатика

Даны действительные числа a1, a30. получить: а) max(a1+a30, a2+a29, a15+a16); б) min(a1∙a16, a2∙a17, a15∙a30). на с++

👇
Ответ:
noeva2005
noeva2005
04.09.2020
#include <stdlib.h>
#include <iostream>
#include <iomanip>
using namespace std;

int main() {
const int n = 30;
double a[n];
double max, min;

srand(time(0));
for (int i = 0; i < n; i++) {
  a[i]=-20 + (51.0 / RAND_MAX) * rand();
  cout << fixed << setw (7) << setprecision (2) << a[i];
}
cout <<"\n";

max = a[0]+a[n-1];
min = a[0]*a[n/2];
for (int i = 1; i<n/2; i++){
 if (a[i]+a[n-i-1] > max) max = a[i]+a[n-i-1]; 
 if (a[i]*a[n/2+i] < min) min = a[i]*a[n/2+i];
}
cout << "max = " << max << "\n";
cout << "min = " << min << "\n";
return 0;
}

Пример (для n=10):
-19.29 30.99 -15.37 26.41 3.65 13.45 29.28 4.28 30.51 -10.36
max = 61.50
min = -259.43
4,7(81 оценок)
Открыть все ответы
Ответ:
06062007ивант
06062007ивант
04.09.2020

#include <iostream>

#include <vector>

using namespace std;

int pos_sum(vector<int> &v){

   int res = 0;

   for(auto &i : v)

       res += i * (i > 0);

   return res;

}

int min_max_mult(vector<int> &v){

   int res = 1;

   pair<int,int> mn,mx;

   mn = {v[0],0};

   mx = mn;

   for(int i = 1; i < v.size(); i++){

       if(v[i] > mx.first){

           mx.first = v[i];

           mx.second = i;

       }

       if(v[i] < mn.first){

           mn.first = v[i];

           mn.second = i;

       }

   }

   int st = min(mn.second, mx.second), fn = max(mn.second,mx.second);

   for(int i = st + 1; i < fn; i++)

       res *= v[i];

   return res;

}

int main(){

   int n;

   cin >> n;

   vector<int> a(n);

   for(auto &i : a) cin >> i;

   cout << pos_sum(a) << " " << min_max_mult(a);

}

4,4(88 оценок)
Ответ:
WowRenka
WowRenka
04.09.2020

#include <iostream>

#include <vector>

using namespace std;

int main()

{

   int s = 0, l = 1, n;

   cin >> n;

   vector <int> v(n);

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

   {

       cin >> v[i];

       if (v[i] > 0)

       {

           s += v[i];

       }

   }

   int imn = 0, imx = 0;

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

   {

       if (v[i] < v[imn])

       {

           imn = i;

       }

       if (v[i] > v[imx])

       {

           imx = i;

       }

   }

   if (imn > imx)

       {

           swap (v[imn], v[imx]);

       }

   for (int i = imn; i < imx; i++)

   {

       if (v[i] > 0)

       {

           l *= v[i];

       }

   }

   cout << s << " " << l;

   return 0;

}

Объяснение:

4,7(44 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ