echo292 2021-11-15 11:58 采纳率: 100%
浏览 106
已结题

用C++编写程序,并添加注释

1、创建一个名为Pizza的类,用它来存储单个比萨饼的信息。这个类应包含以下内容:
几个私有变量,分别用来存储比萨的尺寸(小,中,大)、奶酪配料数量、意大利腊香肠配料数量和火腿配料数量。
一个(或多个)构造函数,用于设置所有变量的数值。
几个公有函数,用于获取和设置变量的数值。
一个名为calcCost () 的公有函数,用于返回一个表示比萨饼价格的double值。
比萨饼价格由以下内容决定:
小:10美元+每份配料2美元
中:12美元+每份配料2美元
大:14美元+每份配料2美元
编写测试代码来生成几个比萨饼信息并输出对这些披萨的价格。例如,一个大比萨饼外加一份奶酪配料、一份意大利腊香肠配料及两份火腿配料的总价格应为22美元
要求写程序注释。
2、对程序1进行扩充,需要你创建一个PizzaOrder类,这个类允许一个订单里最多存储三个披萨饼的信息。每个存储进来的披萨饼信息都应该是一个披萨饼对象。除了合适的变量和构造函数外,还要有以下的函数:
public int getNumPizzas()—返回订单中的披萨的个数。
public Pizza* getPizza1()—返回订单中的第一个披萨,如果pizza1未设置就返回null。
public Pizza* getPizza2()— 返回订单中第二个披萨,如果pizza2未设置就返回null。
public Pizza* getPizza3()— 返回订单中第三个披萨,如果pizza3未设置就返回null。
对于带有另一个PizzaOrder对象并为其比萨创建一个独立的复制构造函数。
使用旧订单作为新订单的起始点可能很有用。
编写一个main函数来测试这个类。如果订单中有两个或者三个披萨饼,则会用到setPizza2和setPizza3函数。下面的代码示例对函数进行了说明。注意代码不完整。作为程序的一部分,你必须补充完整。例如:
Pizza pizza1 = // 这一行代码创建一个大披萨饼,一份奶酪,一份火腿
Pizza pizza2 = // 这一行代码创建一个中披萨饼,两份奶酪,两份意大利腊香肠。
PizzaOrder order1 = // 这一行代码创建一个订单
order1.setNumPizzas(2); // 订单中有两个披萨
order1.setPizza1(pizza1); // 设置第一个披萨
order1.setPizza2(pizza2); // 设置第二个披萨
double total = order1.calcTotal(); // 计算订单的总价格:18+20 = 38
要求写程序注释。

  • 写回答

2条回答 默认 最新

  • bingbingyihao 2021-11-15 12:43
    关注

    回答:代码如下
    第一问,set和get函数都一样,就没写全,可以自己补充一下:

    #include<iostream>
    using namespace std;
    
    class Pizza {
    private:
        string size;
        int milknumber;
        int italynumber;
        int hotnumber;
    
        Pizza(string n1, int n2, int n3, int n4) {
            size = n1;
            milknumber = n2;
            italynumber = n3;
            hotnumber = n4;
        }
    
    public:
    
        void setsize(string n) {
            size = n;
        }
    
        string getsize() {
            return size;
        }
    
        int calCost() {
            double price;
            int sum;
    
            sum = milknumber + italynumber + hotnumber;
    
            if (size == "小") {
                price = 10.0 + 2 * sum;            
            }
            else if (size == "中") {
                price = 12.0 + 2 * sum;
            }
            else if (size == "大") {
                price = 14.0 + 2 * sum;
            }
            else
            {
                cout << "没有该尺寸";
            }
    
            return price;
        }
    };
    

    写一半哈,第二问加一个类,创建几个对象,再写一下测试主函数,你先试试看

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月23日
  • 已采纳回答 11月15日
  • 创建了问题 11月15日

悬赏问题

  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 划分vlan后不通了
  • ¥15 GDI处理通道视频时总是带有白色锯齿
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)
  • ¥15 自适应 AR 模型 参数估计Matlab程序
  • ¥100 角动量包络面如何用MATLAB绘制
  • ¥15 merge函数占用内存过大
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大