@永恒挚爱~~ 2022-06-16 15:24 采纳率: 100%
浏览 116
已结题

自动售货机程序C++求解答

自动售货机程序
出售若干种价格不一的货物
投币存入余额中,购买商品从余额中扣款,不足则提示继续投币
1.有停止购物选项,出货,根据购物情况找零
2.有继续投币选项
3.记录开机以来的营业额
4.货物存量应有固定数量,售完则提示缺货该商品不进行售卖
5.补货功能,补入货物后商品恢复售卖
6.售货机启动后应保持运行

  • 写回答

1条回答 默认 最新

  • 加油吧,小杜 2022-06-16 16:50
    关注

    帮写了一个。有用望采纳

    #include <stdio.h>
    #include <stdlib.h>
    #include <string>
    #include <iostream>
    using namespace std;
    
    
    
    int main()
    {
    
        //售货机只卖三种商品
        // 薯片,可乐,面包  单价为 5元,3元,4元  初始数量都为10int shupians=10;
        int cokes=10;
        int breads=10;
        int Moneys=0; //记录营业额
        cout<<"自动售货机系统启动"<<endl;
        while(true)
        {
            int n=0;
            cout<<"1.购买商品"<<endl;
            cout<<"2.补货"<<endl;
            cout<<"3.查询营业额度"<<endl;
            cin>>n;
            if(n==1)
            {
                while(true)
                {
                    cout<<"请输入要购买的商品"<<endl;
                    cout<<"1.薯片"<<endl;
                    cout<<"2.可乐"<<endl;
                    cout<<"3.面包"<<endl;
                    cout<<"4.退出"<<endl;
                    int a=0;
                    int Count=0;
                    cin>>a;
                    if(a==1)
                    {
                        cout<<"请输入需要购买的数量"<<endl;
                        cin>>Count;
                        if(Count>shupians)
                        {
                            cout<<"数量超出库存,请重新选择"<<endl;
                        }
                        else
                        {
                            cout<<"总价为:"<<Count*5<<endl;
                            cout<<"请投币取货"<<endl;
                            cout<<"请输入投币金额"<<endl;
                            int money=0;
                            cin>>money;
                            if(money<Count*5)
                            {
                                while(true)
                                {
    
                                    cout<<"金额不足"<<endl;
                                    cout<<"1.继续投币"<<endl;
                                    cout<<"2.取消购买"<<endl;
                                    int g=0;
                                    cin>>g;
                                    if(g==1)
                                    {
                                        cout<<"输入投币金额"<<endl;
                                        int money2=0;
                                        cin>>money2;
                                        money+=money2;
                                        if(money>=Count*5)
                                        {
                                            Moneys+=Count*5;
                                            cout<<"购买成功"<<endl;
                                            cout<<"找零:"<<money-Count*5<<"元"<<endl;
                                            break;
                                        }
                                    }else if(g==2)
                                    {
                                        cout<<"找零:"<<money<<"元"<<endl;
                                        break;
                                    }
                                }
    
                            }
                        }
    
                    }else if(a==2)
                    {
                        cout<<"请输入需要购买的数量"<<endl;
                        cin>>Count;
                        if(Count>cokes)
                        {
                            cout<<"数量超出库存,请重新选择"<<endl;
                        }
                        else
                        {
                            cout<<"总价为:"<<Count*3<<endl;
                            cout<<"请投币取货"<<endl;
                            cout<<"请输入投币金额"<<endl;
                            int money=0;
                            cin>>money;
                            if(money<Count*5)
                            {
                                while(true)
                                {
    
                                    cout<<"金额不足"<<endl;
                                    cout<<"1.继续投币"<<endl;
                                    cout<<"2.取消购买"<<endl;
                                    int g=0;
                                    cin>>g;
                                    if(g==1)
                                    {
                                        cout<<"输入投币金额"<<endl;
                                        int money2=0;
                                        cin>>money2;
                                        money+=money2;
                                        if(money>=Count*3)
                                        {
                                            Moneys+=Count*3;
                                            cout<<"购买成功"<<endl;
                                            cout<<"找零:"<<money-Count*5<<"元"<<endl;
                                            break;
                                        }
                                    }else if(g==2)
                                    {
                                        cout<<"找零:"<<money<<"元"<<endl;
                                        break;
                                    }
                                }
    
                            }
                        }
    
                    }else if(a==3)
                    {
                        cout<<"请输入需要购买的数量"<<endl;
                        cin>>Count;
                        if(Count>breads)
                        {
                            cout<<"数量超出库存,请重新选择"<<endl;
                        }
                        else
                        {
                            cout<<"总价为:"<<Count*5<<endl;
                            cout<<"请投币取货"<<endl;
                            cout<<"请输入投币金额"<<endl;
                            int money=0;
                            cin>>money;
                            if(money<Count*4)
                            {
                                while(true)
                                {
    
                                    cout<<"金额不足"<<endl;
                                    cout<<"1.继续投币"<<endl;
                                    cout<<"2.取消购买"<<endl;
                                    int g=0;
                                    cin>>g;
                                    if(g==1)
                                    {
                                        cout<<"输入投币金额"<<endl;
                                        int money2=0;
                                        cin>>money2;
                                        money+=money2;
                                        if(money>=Count*4)
                                        {
                                            Moneys+=Count*4;
                                            cout<<"购买成功"<<endl;
                                            cout<<"找零:"<<money-Count*5<<"元"<<endl;
                                            break;
                                        }
                                    }else if(g==2)
                                    {
                                        cout<<"找零:"<<money<<"元"<<endl;
                                        break;
                                    }
                                }
    
                            }
                        }
                    }
                    else if(a==4)
                    {
                        break;
                    }
                    else
                    {
                        cout<<"操作有误,重新操作"<<endl;
                    }
                }
    
            }
            else if(n==2)
            {
                while(true)
                {
                    cout<<"请输入要购买的商品"<<endl;
                    cout<<"1.薯片"<<endl;
                    cout<<"2.可乐"<<endl;
                    cout<<"3.面包"<<endl;
                    cout<<"4.退出"<<endl;
    
                    int a=0;
                    cin>>a;
                    if(a==1)
                    {
                        cout<<"请输入上货数量"<<endl;
                        int Count=0;
                        cin>>Count;
                        shupians+=Count;
                        cout<<"薯片数量:"<<shupians<<endl;
                    }else if(a==2)
                    {
                        cout<<"请输入上货数量"<<endl;
                        int Count=0;
                        cin>>Count;
                        cokes+=Count;
                        cout<<"可乐数量:"<<cokes<<endl;
    
                    }
                    else if(a==3)
                    {
                        cout<<"请输入上货数量"<<endl;
                        int Count=0;
                        cin>>Count;
                        breads+=Count;
                        cout<<"面包数量:"<<breads<<endl;
    
                    }
                    else if(a==4)
                    {
                        break;
                    }
                    else
                    {
                        cout<<"操作有误,请重新操作"<<endl;
                    }
                }
            }
            else if(n==3)
            {
                cout<<"营业额为:"<<Moneys<<endl;
            }
            else
            {
                cout<<"操作有误,请重新选择"<<endl;
            }
        }
    
        return 0;
    }
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月28日
  • 已采纳回答 6月20日
  • 创建了问题 6月16日

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题