1:作业调度算法–先来先服务

输入N(N>0)个作业,输入每个作业的名字,到达时间,服务时间,按照先来先服务算法,计算每个作业的完成时间,周转时间,带权周转时间(保留2位小数)。
输入格式:
第一行输入作业数目,第二行输入作业的名字,第三行输入到达时间,第四行输入服务时间。
输出格式:
按照到达时间从小到大排序,第一行输出作业的名字,第二行输出到达时间,第三行输出服务时间,第四行输出完成时间,第五行输出完成时间,第六行输出带权周转时间。
输入样例:
在这里给出一组输入。例如:

5
A B C D E
0 1 2 3 4
4 3 4 2 4

输出样例:
在这里给出相应的输出。例如:

作 业 名:A B C D E
到达时间:0 1 2 3 4
服务时间:4 3 4 2 4
完成时间:4 7 11 13 17
周转时间:4 6 9 10 13
带权周转时间:1.00 2.00 2.25 5.00 3.25

代码:

import java.util.*;
import java.util.Scanner;public class Main {static class Node {private String name;//名称private int A_time;//到达时间private int S_time;//服务时间private int F_time;//完成时间private int T_time; //周转时间private double D_time;//带权时间public Node() {}public void setA_time(int a_time) {A_time = a_time;}public void setS_time(int s_time) {S_time = s_time;}public Node(String name) {this.name = name;}}private static void sort(ArrayList<Node> n, int i) {Node temp;for (int s = 0; s < i; s++) {for (int j = s + 1; j < i; j++) {if (n.get(s).A_time > n.get(j).A_time) {Collections.swap(n, s, j);}}}}public static void main(String[] args) {ArrayList<Node> sites = new ArrayList<Node>();Scanner in = new Scanner(System.in);int i = in.nextInt();for (int j = 0; j < i; j++) {String next = in.next();Node node = new Node(next);sites.add(node);}for (Node node :sites) {node.A_time = in.nextInt();}for (Node node :sites) {node.S_time = in.nextInt();}sort(sites, i);for (int x = 0; x < i; x++) {if (x == 0) {sites.get(0).F_time = sites.get(0).A_time + sites.get(0).S_time;} else {if (sites.get(x).A_time > sites.get(x - 1).F_time) {sites.get(x).F_time = sites.get(x).A_time + sites.get(x).S_time;} else {sites.get(x).F_time = sites.get(x - 1).F_time + sites.get(x).S_time;}}}for (int j = 0; j < i; j++) {sites.get(j).T_time = sites.get(j).F_time - sites.get(j).A_time;}for (int h = 0; h < i; h++) {sites.get(h).D_time = 1.00 * sites.get(h).T_time / sites.get(h).S_time;}System.out.print("作 业 名:");for (int j = 0; j < i; j++) {if (j==i-1) {System.out.print(sites.get(j).name);break;}System.out.print(String.format(sites.get(j).name) + " ");}System.out.print("\n");System.out.print("到达时间:");for (int j = 0; j < i; j++) {if (j==i-1) {System.out.print(sites.get(j).A_time);break;}System.out.print(sites.get(j).A_time+ " ");}System.out.print("\n");System.out.print("服务时间:");for (int j = 0; j < i; j++) {if (j==i-1) {System.out.print(sites.get(j).S_time);break;}System.out.print(sites.get(j).S_time+ " ");}System.out.print("\n");System.out.print("完成时间:");for (int j = 0; j < i; j++) {if (j==i-1){System.out.print(sites.get(j).F_time);break;}System.out.print(sites.get(j).F_time+ " ");}System.out.print("\n");System.out.print("周转时间:");for (int j = 0; j < i; j++) {if (j==i-1){System.out.print(sites.get(j).T_time);break;}System.out.print(sites.get(j).T_time+ " ");}System.out.print("\n");System.out.print("带权周转时间:");for (int j = 0; j < i; j++) {if (j==i-1) {System.out.print(String.format("%.2f",sites.get(j).D_time));break;}System.out.print(String.format("%.2f",sites.get(j).D_time)+" ");}}
}

操作系统:作业调度算法--先来先服务相关推荐

  1. 操作系统实验 作业调度算法 先来先服务FCFS调度算法

    作业调度算法 先来先服务FCFS调度算法 作业调度的原理: 非抢占调度 把作业从外存调入内存 作业调度算法: 先来先服务FCFS 短作业优先SJF 静态优先级调度 高响应比优先调度 实验原理 作业调度 ...

  2. 7-1 作业调度算法--先来先服务

    7-1 作业调度算法–先来先服务 输入N(N>0)个作业,输入每个作业的名字,到达时间,服务时间,按照先来先服务算法,计算每个作业的完成时间,周转时间,带权周转时间(保留2位小数). 输入格式: ...

  3. 操作系统作业调度算法c语言,操作系统课程设计报告电梯调度算法c语言实现.doc...

    操作系统课程设计报告电梯调度算法c语言实现 操作系统课程设计报告电梯调度算法c语言实现 :调度 算法 电梯 课程设计 操作系统 操作系统课程设计报告 模拟操作系统课程设计 写一个简单的操作系统 篇一: ...

  4. 计算机操作系统——作业调度算法

    文章目录 一.作业的基本知识 1.作业和作业步 2.作业运行的三个阶段 二.先来先服务(FCFS)调度算法 1.算法思想 2.算法评价 三.短作业优先(SJF)调度算法 1.算法思想 2.算法评价 四 ...

  5. 7-1 作业调度算法--先来先服务 (30 分)(思路+详解+vector+map+map做法)Come Baby!!!!!!!!!!!

    一:题目: 输入N(N>0)个作业,输入每个作业的名字,到达时间,服务时间,按照先来先服务算法,计算每个作业的完成时间,周转时间,带权周转时间(保留2位小数). 输入格式: 第一行输入作业数目, ...

  6. 作业调度算法--先来先服务

    输入N(N>0)个作业,输入每个作业的名字,到达时间,服务时间,按照先来先服务算法,计算每个作业的完成时间,周转时间,带权周转时间(保留2位小数). 输入格式: 第一行输入作业数目,第二行输入作 ...

  7. 3.处理机调度——作业调度算法与进程调度算法

    1.作业调度与进程调度算法 作业调度算法: 先来先服务调度算法(FCFS) 短作业优先调度算法(SJF) 优先级调度算法 高响应比优先调度算法 进程调度算法: 先来先服务调度算法(FCFS) 短进程优 ...

  8. 【操作系统 - 1】先来先服务FCFS和短作业优先SJF进程调度算法

    操作系统系列 学习至此,发现很多学了但很久没用的知识,久而久之,慢慢遗忘.等哪天还需要的话,却发现已经忘得差不多了,即使整理了文档(word等),还是得从头再学一遍.读研第一学期,发现很多东西都可以从 ...

  9. 操作系统实验六:作业调度算法模拟

    一.实验目的 (1)掌握周转时间.等待时间.平均周转时间等概念及其计算方法. (2)理解五种常用的进程调度算法(FCFS.SJF.HRRF.HPF.RR),区分算法之间的差异性,并用C语言模拟实现各算 ...

  10. 作业调度算法--高响应比优先 操作系统_处理器管理_编程题

    操作系统_处理器管理_编程题 作业调度算法–高响应比优先 输入N个作业,输入每个的作业名字,到达的时间,服务的时间,根据高响应比优先算法,计算出每个作业的完成的时间,周转的时间,带权周转的时间(其中保 ...

最新文章

  1. 重磅升级,52个Python+OpenCV实战项目教你掌握图像处理
  2. 告诉我们您对 Office 2010 的看法
  3. Concurrent Package
  4. java 发送cookie_Java如何在Servlet中发送cookie?
  5. python day2 python基础 列表、元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码...
  6. (整理)ubuntu10.10安装低版本的编译器(低版本)(gcc)(ubuntu)
  7. 3 ie兼容 vue_前端开发:MVVM框架之Vue势必会取代JQuery吗?
  8. 看张子阳的书真是收获很多,也醒悟了很多(一)
  9. 开发中遇到的bug记录
  10. 飞天茅台也可以在天猫上购买了,售价1499元!
  11. mysql单张表数据量极限_极限数据量范围的安全测试
  12. mysql 两张大表关联_详解mysql生产环境如何快速有效的删除大表,附实验说明
  13. 20181211作业
  14. 《统计学习方法》P179页10.22前向后向算法公式推导
  15. C#泛型中的抗变和协变
  16. 手机站的拨打电话和发短信
  17. paip.提升效率--输入框不能粘贴的问题
  18. echart 世界地图发光_echarts生成世界地图,百度echarts生成世界地图方法
  19. Unity 镜子反射特效
  20. 安全系列之一——SYS-VUL-0048漏洞

热门文章

  1. Specification for the Lab VIEW Measurement File
  2. android实战理财,基于Android的理财系统APP的设计
  3. 往年计算机二级在线查询,2012年计算机二级查询
  4. 会员积分系统设计 1 内容说明
  5. Linux系统上安装python详细步骤
  6. 菜鸟驿站人工投诉电话是多少(手把手教你投诉快递员)
  7. Adjoin the Networks Gym - 100781A
  8. odoo 慎用related(计算字段)
  9. main函数写法总结
  10. 整活小能手!Windows系统滑动关机!一行脚本实现炫酷效果