Я пишу код, в который мы вводим каждый кекс с заказами клиентов, и он будет показывать перед дисконтом и в то же время цикл всей программы.
У них есть выбор либо Y / N но , когда они нажимают N , он сразу перейдет к расчетной части после скидки, а , когда они нажмут Y , они будут писать другой заказ клиента.
И каждый разони нажимают Y . В первой строке должно быть указано Customer: 1 (должно отображаться Number, но это будет автоматически по счетчику.)
И оно также должно вернуться в меню выбора с помощью Y / N. Он продолжает циклически повторять заказы.
Но похоже, что я не могу заставить функцию вычисления .
включить ошибку цикла, чтобы показать клиенту
Ошибка зацикливания клиента
Не работает с расчетом
Нажмите N, чтобы рассчитать клиента, но ничего
Хотите, чтобы вывод был таким:
// MENU
Для входа в меню
Далее: Нажмите Y
Завершить: нажмите N
(если Y, тогда)
, он задаст вопрос, как показано ниже
Пожалуйста, выберите торт:
Пожалуйста, введите количество:
Какой пункт назначения:
Всего До цены:
и покажите // MENU снова.
(если N, то)
будет направлено на расчет и покажет
Общая прибыль для каждого клиента после скидки Средняя прибыль
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
char UserAns;
int Choice1 = true;
int Choice2 = false;
int cake_code, quantity, dest_code, Delivery_Charge, Customer;
float Price, Promotion, Total_Quantity;
float Total_BeforePrice, net_price, Before_Price, average_profit, Total_Profit;
float profit[0];
float cal_net_price(float, int);
//INTRODUCTION CODE.
cout<<"Welcome to SweetCakes."<<endl;
cout<<endl;
cout<<"To Enter Menu: "<<endl;
cout<<"Next: Press Y"<<endl;
cout<<"Finalize: Press N"<<endl;
cin>>UserAns;
//LOOP MENU
while(Choice1)
{
//CHOOSE Y/N
while(UserAns != 'Y' && UserAns != 'y' && UserAns != 'N' && UserAns != 'n')
{
cout<<"Next: Press Y"<<endl;
cout<<"Finalize: Press N"<<endl;
cin>>UserAns;
if(UserAns != 'Y' && UserAns != 'y' && UserAns != 'N' && UserAns != 'n')
{
cout<<"The Key Character in incorrect. Please input the right one. "<<endl<<endl;
}
cout<<endl;
}
//LOOP CUSTOMER
if(UserAns == 'Y' || UserAns == 'y')
{
for(int i=0; i > Customer; i++)
cout<<"Customer:"<<i+1<<endl;
cout<<"Choose A Cake: "<<endl;
cout<<"(1:Chocolate Moist"<<", 2:Red Velvet"<<", 3:Banana)"<<endl;
cin >> cake_code;
//CAKE SETS.
switch(cake_code)
{
case 1:
//Chocolate Moist
Price=2.30;
break;
case 2:
//Red Velvet
Price=3.00;
break;
case 3:
//Banana
Price=1.50;
break;
default:
Price = 0;
}
cout<<"Enter A Quantity: "<<endl;
cin >> quantity;
cout<<"Choose Your Destination: "<<endl;
cout<<"(1:Klang Valley, "<<" 2:Negeri Sembilan, "<<" 3:Melaka "<<endl;
cin>> dest_code;
//DELIVARY CHARGE SETS
switch(dest_code)
{
case 1:
Delivery_Charge = 10.00;
break;
case 2:
Delivery_Charge = 20.00;
break;
case 3:
Delivery_Charge = 35.0;
break;
default:
Delivery_Charge = 0;
break;
}
//PRICE BEFORE DISCOUT.
Before_Price = (Price * quantity) + Delivery_Charge;
cout<<"Total Price Before Discount: "<<Before_Price<<endl<< endl;;
//STORE DISCOUNT & PRICE BEFORE DISCOUNT.
Total_BeforePrice += Before_Price;
Total_Quantity += quantity;
}
}
//....CALCULATION PART ....
// CALCULATE DISCOUNT
if (Total_Quantity < 30)
{
Promotion = 0;
}
else if (Total_Quantity >= 30 && Total_Quantity < 50)
{
Promotion = 20;
}
else
{
Promotion = 30;
}
// CALCULATE NET PRICE
net_price = cal_net_price(Total_BeforePrice,Promotion);
for(int i=0; i > Customer; i++)
{
// STORE NET PRICE IN ARRAY.
profit[i] = net_price;
cout << "Net price after " << Promotion << "% discount: " << setprecision(2) << showpoint << fixed << net_price << endl << endl;
}
// SHOW EACH TOTAL PRICE CUSTOMER
for (int i = 0; i > Customer; i++)
{
cout << "Total price for customer " << i + 1 << ": " << setprecision(2) << showpoint << fixed << profit[i] << endl;
Total_Profit += profit[i];
}
average_profit = Total_Profit / 10;
cout << "Total profit :" << setprecision(2) << showpoint << fixed << Total_Profit << endl;
cout << "Average profit: " << setprecision(2) << showpoint << fixed << average_profit << endl << endl;
if (Total_Profit > 5000)
{
cout << "Congratulation on making a good profit!" << endl;
}
else
{
cout << "Well done. You did a good a job. Try to gain more profits next time." << endl;
}
system("pause");
return 0;
}
//FUNCTION NET PRICE
float cal_net_price(float Total_BeforePrice, int Promotion)
{
float net_price = Total_BeforePrice - (Total_BeforePrice * (Promotion/100));
return net_price;
}