资源简介
磁盘调度算法模拟软件,完整课程设计,C++写的代码,QT写的界面,可直接运行
代码片段和文件信息
#include “dialog.h“
#include “ui_dialog.h“
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
Dialog::Dialog(QWidget *parent) :
QDialog(parent)
ui(new Ui::Dialog)
{
ui->setupUi(this);
//free(Track);
}
Dialog::~Dialog()
{
delete ui;
}
//退出程序按钮
void Dialog::on_pushButton_2_clicked()
{
// free(Track);
// delete [] Track;
this->close();
}
//选择不同算法,调用不同函数
void Dialog::on_comboBox_currentTextChanged(const QString &arg1)
{
QString c;
c=ui->comboBox->currentText();
if(c==“先来先服务调度算法“)
{
FCFS(Track Head);
}
if(c==“最短寻道时间优先调度算法“)
{
SSTF(TrackHead) ;
}
if(c==“扫描调度算法(磁头向磁道递增方向移动)“)
{
SCANR(Track Head);
}
if(c==“扫描调度算法(磁头向磁道递减方向移动)“)
{
SCANL(TrackHead);
}
if(c==“循环扫描调度算法(磁头向磁道递增方向移动)“)
{
CSCANR(Track Head);
}
if(c==“循环扫描调度算法(磁头向磁道递减方向移动)“)
{
CSCANL(Track Head);
}
if(c==“算法类型“)
{
ui->textBrowser_3->setPlainText(““);
}
}
//按下确认后的操作
void Dialog::on_pushButton_clicked()
{
ui->textBrowser->setPlainText(““);
ui->textBrowser_2->setPlainText(““);
ui->comboBox->setCurrentIndex(0);
ui->textBrowser_3->setPlainText(““);
//delete[] Track;
//free(Track);
QString ab=this->ui->cidao->text();
N=ab.toInt();
if(N<=0||N>=200){
QMessageBox::critical(this“错误““请输入大于0小于200的磁道数““确定“);
}
else{
QString a;
QString b;
int i;
//srand((unsigned)time(NULL));
for (i = 0;i < N;i++)
{
//Track[i]=1;
Track[i] = 1 + (int)(200.0*rand() / (RAND_MAX + 1.0));
b.sprintf(“%d“Track[i]);
ui->textBrowser_2->insertPlainText(b+“ “);
}
Head = 1 + (int)(200.0*rand() / (RAND_MAX + 1.0));
a.sprintf(“%d“Head);
ui->textBrowser->insertPlainText(a);
}
}
//先来先服务调度算法
void Dialog::FCFS(int Track[] int Head){
ui->textBrowser_3->setPlainText(““);
int Sum = 0;
QString b;
QString c;
QString D;
QString F;
QString G;
int i;
int q;
int a;
int d;
d=Head;
int* Copy = new int[N];
for (q = 0;q < N;q++)
{
Copy[q] = Track[q];
}
ui->textBrowser_3->append(“序号 下一磁道号 移动的磁道数“);
for (i = 0;i < N;i++)
{
if (d <= Copy[i])
{
a = Copy[i] - d;
}
if (d > Copy[i])
{
a = d - Copy[i];
}
d = 属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
.CA.... 22065 2018-06-14 12:53 磁盘调度算法\dialog.cpp
.CA.... 781 2018-06-14 12:53 磁盘调度算法\dialog.h
.CA.... 7061 2018-06-14 12:57 磁盘调度算法\dialog.ui
.CA.... 232 2018-06-14 12:53 磁盘调度算法\main.cpp
.CA.... 999 2018-06-05 20:51 磁盘调度算法\mainwindow.cpp
.CA.... 474 2018-06-05 20:25 磁盘调度算法\mainwindow.h
.CA.... 3793 2018-06-04 10:49 磁盘调度算法\mainwindow.ui
.CA.... 1031 2018-06-14 12:52 磁盘调度算法\unti
.CA.... 223788 2018-06-15 07:06 磁盘调度算法\unti
.C.D... 0 2018-06-15 07:06 磁盘调度算法
----------- --------- ---------- ----- ----
260224 10
- 上一篇:Ogre嵌入MFC_DEMO
- 下一篇:C++数据结构等价类实现
相关资源
- qTox (基于 peer-to-peer )
- 国际象棋的qt源代码
- C++中头文件与源文件的作用详解
- C++多线程网络编程Socket
- VC++ 多线程文件读写操作
- 利用C++哈希表的方法实现电话号码查
- 移木块游戏,可以自编自玩,vc6.0编写
- C++纯文字DOS超小RPG游戏
- VC++MFC小游戏实例教程(实例)+MFC类库
- 连铸温度场计算程序(C++)
- 6自由度机器人运动学正反解C++程序
- Em算法(使用C++编写)
- libstdc++-4.4.7-4.el6.i686.rpm
- VC++实现CMD命令执行与获得返回信息
- 白话C++(全)
- C++标准库第1、2
- 大数类c++大数类
- C++语言编写串口调试助手
- c++素数筛选法
- QT上位机
- qt媒体播放器
- QT5开发及源代码
- qt完整项目
- C++ mqtt 用法
- 商品库存管理系统 C++ MFC
- qt进度条(RoundProgressBar)
- Qt的纽带风格界面实现(Office Ribbon风
- qt 实现画板
- QT Hisi demo
- 基础qt数据库读取和显示
川公网安备 51152502000135号
评论
共有 条评论