Тема: Порівняння із вказівником на масив
Не можу порівняти із tmp та вивести. Що не так із кодом?
Завдання:
Описати структуру з іменем SKLAD. яка містить поля: NAME - назва товару; TYPE - одиниця виміру; COST - ціна одиниці товару; QUANTITY - кількість. Написати програму, що окремими функціями виконує дії:
- введення з клавіатури даних в масив SHOP, що складається з N змінних типу SKLAD;
- виведення на екран інформації про товар, його кількість, ціну одиниці та обчислену загальну суму на складі, назва якого вводиться з клавіатури; якщо такого немає, то вивести відповідне повідомлення.
#include <iostream>
#include <string>
using namespace std;
struct Sklad {
string name;
string type;
double cost;
double quantity;
double sums(double a, double b)
{
double sum = a*b;
return sum;
}
void Print()
{
cout<<"Назва товару"<<name<<endl;
cout<<"Одиниця виміру"<<type<<endl;
cout<<"Ціна одиниці товару"<<cost<<endl;
cout<<"Кількість товару"<<quantity<<endl;
cout<<"Загальна вартість товару "<<name<<" на складі складає "<<sums(cost, quantity)<<endl;
}
};
int main()
{
setlocale(0, ".1251");
cout<<"\nКількість товарів:"<<endl;
int n;
cin>>n;
Sklad *tovary = new Sklad[n];
for (int j=0; j!=n; j++) {
cout<<"\nНазва товару:"<<endl;
cin>>tovary[j].name;
cout<<"Одиниця виміру:"<<endl;
cin>>tovary[j].type;
cout<<"Ціна одиниці товару:"<<endl;
cin>>tovary[j].cost;
cout<<"Кількість товару:"<<endl;
cin>>tovary[j].quantity;
}
cout<<endl;
string tmp;
cout<< tmp<<endl;
cout<<"\nВедіть назву товару, який ви шукаєте:"<<endl;
с
getline(cin, tmp);
for (int j=0; j!=n; j++)
if (tovary[j].name == tmp) {
tovary[j].Print();
}
else {
cout<<"\nТакого товару на складі немає."<<endl;}
delete[]tovary;
return 0;
}