Продукты на складе: - имя, - изготовитель, - цена, - количество. Расчет общей стоимости каждого товара и общая стоимость всех товаров на складе

Поля структуры:

  • Имя
  • Производитель
  • Цена
  • Количество

Задание:

Произвести расчет общей стоимости каждого товара и общая стоимость всех товаров на складе.

То есть, вывести общую сумму каждого продукта (по их количеству) и общую сумму всех товаров на складе.

Я это не до конца понимаю как сделать, поэтому прошу помочь

В общем не выводит то, что нужно, помогите пожалуйста

#include <string>
#include <clocale>
#include <iostream>
#pragma warning(disable : 4996)

using namespace std;

int main(int argc, char* argv[]){
    struct tovar{
        char nazva[12], pr[10]; int cnt; float stoim;
    };
setlocale(LC_ALL, ".1251");
int kol = 0;
cout << "Введите количество продуктов - "; cin >> kol;
tovar* z = new tovar[kol];
cout << "Введите поочерёдно строки с ведомостями про '" << kol
    << "' продукт(а, ов):\nИмя Производитель Количество Цена (десятичная запятая)" << endl;
setlocale(LC_ALL, ".OCP");
for (int i = 0; i < kol; i++) {
    scanf("%s %s %i %g", z[i].nazva, z[i].pr, &z[i].cnt, &z[i].stoim);
}
    double allsum = 0, Svart; int ktel = 0;
    setlocale(LC_ALL, "rus");
    cout << "\nПросмотр продуктов на складе: Имя Производитель Количество Цена Стоимость" << endl;
    setlocale(LC_ALL, ".OCP");
    for (int i = 0; i < kol; i++) {
        if (!stricmp(z[i].pr, "Склад")){
            ktel++;
            Svart = z[i].stoim * z[i].cnt;
            allsum += Svart;
            printf("%i %s\t%s\t%i\t%5.2f\t%6.2f\n",
                ktel, z[i].nazva, z[i].pr, z[i].cnt, z[i].stoim, Svart);
        }
    }
    double allsum = 0, Svart; int ktel = 0;
    printf("\nОбщая стоимость количества каждого продукта на складе - %5.2f\n", Svart);
    for (int i = 0; i < kol; i++) {
        if (!stricmp(z[i].pr, "Склад")) {
            ktel++;
            Svart = z[i].stoim * z[i].cnt;
            printf("%i %s\t%s\t%i\t%5.2f\t%6.2f\n",
                ktel, z[i].nazva, z[i].pr, z[i].cnt, z[i].stoim, Svart);
        }
    }
    delete[]z;
    system("pause>>void");
    return 0;
}

Ответы (0 шт):