C/C++

Подпрограмма задача по с и с++

#include <iostream>
#include <iomanip>
#include <vector>
#include <cstdlib>
#include <ctime>
#include <cmath>
using namespace std;
int main() {
srand(unsigned(time(NULL)));
const size_t n = 16;
vector<double> x(n), y(n);
const int a = -99;
const int b = 100;
for (size_t i = 0; i < n; ++i) {
x[i] = double(a + rand() % (b - a)) / 10.0;
y[i] = double(a + rand() % (b - a)) / 10.0;
}
const streamsize w = 6;
cout << fixed << setprecision(1) << "x:";
for (size_t i = 0; i < n; ++i) cout << setw(w) << x[i];
cout << "\ny:";
for (size_t i = 0; i < n; ++i) cout << setw(w) << y[i];
puts("");
double x_min = x[0];
double x_max = x[0];
double y_min = y[0];
double y_max = y[0];
for (size_t i = 1; i < n; ++i) {
if (x_min > x[i]) x_min = x[i];
if (x_max < x[i]) x_max = x[i];
if (y_min > y[i]) y_min = y[i];
if (y_max < y[i]) y_max = y[i];
}
cout
<< "x min: " << x_min << '\n'
<< "x max: " << x_max << '\n'
<< "y min: " << y_min << '\n'
<< "y max: " << y_max << '\n';
double mx_min = fabs(x_min);
double mx_max = fabs(x_max);
double my_min = fabs(y_min);
double my_max = fabs(y_max);
double z = pow(exp(mx_max) - exp(my_max), 2) / sqrt(mx_max * my_min) * my_min;
cout << "z: " << setprecision(4) << z << '\n';
}
FE
Farhad Erimbetov
56 953
Лучший ответ
Шурьга Хлебников Вы лучший спасибо вам
double z = pow((exp(max_x) - exp(max_y)), 2) * std::abs(y_min) / sqrt(std::abs(x_max) * std::abs(y_min));