#include <iostream>
#include <time.h>
#include <vector> //c++标准模板库,相当于一个容器,存放任意类型动态数组,能增加和压缩数据
#include <math.h>
#include <stdlib.h>
#include <algorithm> //功能强大的算法库
#include <cstring> //字符串函数
#include <windows.h> //包含了其他windows头文件,比如:数据类型定义、内核函数、用户及二面函数、图形设备接口函数等
#include <fstream> //文件流
using namespace std;
int position = 0; //当前磁道位置
int dis = 0; //记录磁道走过的长度
double average_distance = 0;
/*随机生成序列函数*/
void request(vector<int>&m_vec,ofstream &outfile){
cout<<"随机生成磁盘序列:"<<endl;
int n = 0;
srand(time(NULL)); /*添加随机数种子的函数,time(null)返回值作为srand函数的参数,
意思是以现在的系统时间作为随机数的种子来产生随机数!至于NULL这个参数。
只有设置成NULL才能获得系统的时间!*/
n = rand() % 20 + 1; //rand()是一个产生随机数的函数,与srand一起用,rand()%20+1:n的取值为1-20
int temp = 0;
for(int i=0;i<n;i++){
temp = rand() % 100; //temp的取值为0-100
m_vec.push_back(temp); // 将随机生成的temp数输入到vector里面,再从里面读出数据
cout<<temp<<" ";
outfile<<temp<<endl; //outfile输出数据文件流
}
cout<<endl;
position = rand() % 100; //当前磁道为随机生成的0-100之间的数
cout<<"当前磁道:"<<position<<endl;
}
//计算平均距离函数
void compute_dis(vector<int>m_vec,int
#include <time.h>
#include <vector> //c++标准模板库,相当于一个容器,存放任意类型动态数组,能增加和压缩数据
#include <math.h>
#include <stdlib.h>
#include <algorithm> //功能强大的算法库
#include <cstring> //字符串函数
#include <windows.h> //包含了其他windows头文件,比如:数据类型定义、内核函数、用户及二面函数、图形设备接口函数等
#include <fstream> //文件流
using namespace std;
int position = 0; //当前磁道位置
int dis = 0; //记录磁道走过的长度
double average_distance = 0;
/*随机生成序列函数*/
void request(vector<int>&m_vec,ofstream &outfile){
cout<<"随机生成磁盘序列:"<<endl;
int n = 0;
srand(time(NULL)); /*添加随机数种子的函数,time(null)返回值作为srand函数的参数,
意思是以现在的系统时间作为随机数的种子来产生随机数!至于NULL这个参数。
只有设置成NULL才能获得系统的时间!*/
n = rand() % 20 + 1; //rand()是一个产生随机数的函数,与srand一起用,rand()%20+1:n的取值为1-20
int temp = 0;
for(int i=0;i<n;i++){
temp = rand() % 100; //temp的取值为0-100
m_vec.push_back(temp); // 将随机生成的temp数输入到vector里面,再从里面读出数据
cout<<temp<<" ";
outfile<<temp<<endl; //outfile输出数据文件流
}
cout<<endl;
position = rand() % 100; //当前磁道为随机生成的0-100之间的数
cout<<"当前磁道:"<<position<<endl;
}
//计算平均距离函数
void compute_dis(vector<int>m_vec,int