Написати програму в С++ Визначити товар з найбільшою кількістю на складі та обчислити його сумарну вартість Умова:
Товари на складі:
– найменування;
– виробник;
– ціна;
– кількість.
Можна на основі даного коду:
#include
#include
using namespace std;
int main()
{
struct tovar
{ char nazva[12], pr[10]; int cnt; float vart; };
int kol = 0;
setlocale(LC_ALL, ".1251");
cout > kol;
tovar *z = new tovar[kol];
cout >void");
return 0;
}
Код ниже, но вероятно он не очень похож на то что попросил преподаватель. Извини, поздно увидел твои комментарии насчет этого.
Объяснение:
#include <bits/stdc++.h>
#define int long long
using namespace std;
bool cmp(pair<pair<string, string>, pair<int, int>> a, pair<pair<string, string>, pair<int, int>> b) {
return a.second.second > b.second.second;
}
signed main() {
int n; cin >> n; // Количество наименований
vector<pair<pair<string, string>, pair<int, int>>> s(n); // Массив с товарами, каждый товар описывается двумя парами, в первой - название и производитель, во второй - цена и количество
for (int i = 0; i < n; ++i)
cin >> s[i].first.first >> s[i].first.second >> s[i].second.first >> s[i].second.second; // Вводим данные о товаре
sort(s.begin(), s.end(), cmp);
cout << "Товар с наибольшим количеством на складе: " << s[0].first.first << ". Суммарная стоимость " << s[0].first.first << " на складе равняется " << s[0].second.first * s[0].second.second << ".";
}