11.3作业

封装一个类,私有成员为:一个长度为8的整形数组、总和​
公有成员函数:输出函数:输出数组中所有内容​;
输入函数:输入数组所有元素​;
求和函数:求得数组中所有元素的和​
排序函数:将数组中的元素进行升序排序​

#include <iostream>
#define LENG 8
using namespace std;
class array
{
public:
    void input_arr()
    {
        for(int i=0;i<LENG;i++)
        {
            cin>>arr[i];
        }
    }
    void output_arr()
    {
        for(int i=0;i<LENG;i++)
        {
            cout<<arr[i]<<' ';
        }
        cout<<endl;
    }
    int sum_arr()
    {
        int sum=0;
        for(int i=0;i<LENG;i++)
        {
            sum+=arr[i];
        }
        return sum;
    }
    void sort_arr()
    {
        //冒泡排序
        int temp;
        for(int i=0;i<LENG;i++)
        {
            for(int j=i+1;j<LENG;j++)
            {
                if(arr[j]<arr[i])
                {
                    temp=arr[j];
                    arr[j]=arr[i];
                    arr[i]=temp;
                }
            }
        }
    }
private:
    int arr[LENG];
    
};

int main()
{
    array a1;
    a1.input_arr();
    a1.output_arr();
    a1.sort_arr();
    a1.output_arr();
    cout<<a1.sum_arr()<<endl;
    return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我来解答你的问题。根据你提供的作业信息,我们可以得到以下表格: | 作业 | 到达时间 | 执行时间 | | --- | --- | --- | | A | 9.0 | 2.0 | | B | 9.2 | 1.0 | | C | 9.4 | 0.5 | | D | 9.5 | 0.3 | 接下来,我们分别使用不同的调度算法进行计算。 1. 先来先服务调度算法 首先,我们使用先来先服务调度算法进行计算。根据到达时间的先后顺序,作业的调度序列为:A -> B -> C -> D。 作业A的完成时间为11.0,周转时间为2.0,带权周转时间为1.0。作业B的完成时间为12.0,周转时间为2.8,带权周转时间为2.8。作业C的完成时间为12.5,周转时间为3.1,带权周转时间为6.2。作业D的完成时间为12.8,周转时间为3.3,带权周转时间为11.0。 因此,平均周转时间为2.8,平均带权周转时间为5.2。 2. 非抢占式短作业优先调度算法 接下来,我们使用非抢占式短作业优先调度算法进行计算。根据作业的执行时间,作业的调度序列为:D -> C -> B -> A。 作业D的完成时间为9.8,周转时间为0.3,带权周转时间为1.0。作业C的完成时间为10.3,周转时间为0.9,带权周转时间为1.8。作业B的完成时间为11.3,周转时间为2.1,带权周转时间为2.1。作业A的完成时间为13.3,周转时间为4.3,带权周转时间为2.15。 因此,平均周转时间为1.65,平均带权周转时间为1.7。 3. 抢占式短作业优先调度算法 接下来,我们使用抢占式短作业优先调度算法进行计算。根据作业的执行时间和到达时间,作业的调度序列为:D -> C -> B -> A。 作业D的完成时间为9.8,周转时间为0.3,带权周转时间为1.0。作业C的完成时间为10.3,周转时间为0.9,带权周转时间为1.8。作业B的完成时间为11.3,周转时间为2.1,带权周转时间为2.1。作业A的完成时间为13.3,周转时间为4.3,带权周转时间为2.15。 因此,平均周转时间为1.65,平均带权周转时间为1.7。 4. 最高响应比优先调度算法 最后,我们使用最高响应比优先调度算法进行计算。作业的响应比为: | 作业 | 响应比 | | --- | --- | | A | 5.5 | | B | 3.2 | | C | 1.8 | | D | 1.0 | 根据响应比的大小,作业的调度序列为:A -> B -> C -> D。 作业A的完成时间为11.0,周转时间为2.0,带权周转时间为1.0。作业B的完成时间为12.0,周转时间为2.8,带权周转时间为2.8。作业C的完成时间为12.5,周转时间为3.1,带权周转时间为6.2。作业D的完成时间为12.8,周转时间为3.3,带权周转时间为11.0。 因此,平均周转时间为2.8,平均带权周转时间为5.2。 综上所述,不同的调度算法得到的结果略有不同,其中非抢占式短作业优先调度算法和抢占式短作业优先调度算法得到的平均周转时间和平均带权周转时间最小,是比较优秀的调度算法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值