Добавить z-8.cpp
This commit is contained in:
95
z-8.cpp
Normal file
95
z-8.cpp
Normal file
@@ -0,0 +1,95 @@
|
||||
#include <iostream>
|
||||
#include <vector>
|
||||
|
||||
using namespace std;
|
||||
|
||||
// Определяем матрицы A и B
|
||||
const int sellers = 3;
|
||||
const int products = 4;
|
||||
|
||||
double A[sellers][products] = {
|
||||
{5, 2, 0, 1},
|
||||
{3, 2, 5, 2},
|
||||
{20, 0, 0, 0}
|
||||
};
|
||||
|
||||
double B[products][2] = {
|
||||
{1.20, 0.50},
|
||||
{2.00, 0.40},
|
||||
{3.00, 1.00},
|
||||
{5.00, 1.50}
|
||||
};
|
||||
|
||||
// Умножение матриц и получение матрицы C
|
||||
void multiplyMatrices(const double A[sellers][products], const double B[products][2], double C[sellers][2]) {
|
||||
for (int i = 0; i < sellers; ++i) {
|
||||
for (int j = 0; j < 2; ++j) {
|
||||
C[i][j] = 0;
|
||||
for (int k = 0; k < products; ++k) {
|
||||
C[i][j] += A[i][k] * B[k][j];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int main() {
|
||||
setlocale(LC_ALL, "");
|
||||
double C[sellers][2];
|
||||
multiplyMatrices(A, B, C);
|
||||
|
||||
// Вывод результатов матрицы C
|
||||
cout << "Матрица C (Выручка и Комиссионные):" << endl;
|
||||
for (int i = 0; i < sellers; ++i) {
|
||||
cout << "Продавец " << i + 1 << ": Выручка = " << C[i][0] << ", Комиссионные = " << C[i][1] << endl;
|
||||
}
|
||||
|
||||
// 1. Определение продавца с наибольшей и наименьшей выручкой
|
||||
double maxRevenue = C[0][0], minRevenue = C[0][0];
|
||||
int maxRevSeller = 1, minRevSeller = 1;
|
||||
for (int i = 1; i < sellers; ++i) {
|
||||
if (C[i][0] > maxRevenue) {
|
||||
maxRevenue = C[i][0];
|
||||
maxRevSeller = i + 1;
|
||||
}
|
||||
if (C[i][0] < minRevenue) {
|
||||
minRevenue = C[i][0];
|
||||
minRevSeller = i + 1;
|
||||
}
|
||||
}
|
||||
cout << "1) Продавец с наибольшей выручкой: " << maxRevSeller << ", с наименьшей: " << minRevSeller << endl;
|
||||
|
||||
// 2. Определение продавца с наибольшими и наименьшими комиссионными
|
||||
double maxCommission = C[0][1], minCommission = C[0][1];
|
||||
int maxCommSeller = 1, minCommSeller = 1;
|
||||
for (int i = 1; i < sellers; ++i) {
|
||||
if (C[i][1] > maxCommission) {
|
||||
maxCommission = C[i][1];
|
||||
maxCommSeller = i + 1;
|
||||
}
|
||||
if (C[i][1] < minCommission) {
|
||||
minCommission = C[i][1];
|
||||
minCommSeller = i + 1;
|
||||
}
|
||||
}
|
||||
cout << "2) Продавец с наибольшими комиссионными: " << maxCommSeller << ", с наименьшими: " << minCommSeller << endl;
|
||||
|
||||
// 3. Общая сумма выручки за проданные товары
|
||||
double totalRevenue = 0;
|
||||
for (int i = 0; i < sellers; ++i) {
|
||||
totalRevenue += C[i][0];
|
||||
}
|
||||
cout << "3) Общая сумма выручки: " << totalRevenue << endl;
|
||||
|
||||
// 4. Общая сумма комиссионных
|
||||
double totalCommission = 0;
|
||||
for (int i = 0; i < sellers; ++i) {
|
||||
totalCommission += C[i][1];
|
||||
}
|
||||
cout << "4) Общая сумма комиссионных: " << totalCommission << endl;
|
||||
|
||||
// 5. Общая сумма денег, прошедших через руки продавцов
|
||||
double totalMoney = totalRevenue + totalCommission;
|
||||
cout << "5) Общая сумма денег через руки продавцов: " << totalMoney << endl;
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user