LJF
LJF
#include <iostream>
#include<vector>
#include<algorithm>
struct job{
int id;
int burst_time;
};
class ljfscheduler {
private:
vector<job>joblist;
public:
ljfscheduler(vector<job>&jobs)
{
joblist = jobs;
}
void schedule(){
sort(joblist.begin(),joblist.end() , comparejobs);
int current_time =0 ;
cout<<"job schedule(ljf) : \n";
cout<<"job id \t burst time \t completion time \n" ;
current_time = completion_time;
}
}
};
int main()
{
vector<job>jobs ={
{1,10} ,{2,5} , {3,8}
};
ljfscheduler scheduler(jobs);
scheduler.schedule();
return 0;
}
LRTF C++ PROGRAM:
#include <iostream>
#include <vector>
#include <algorithm>
struct Process {
int id;
int arrivalTime;
int burstTime;
int remainingTime;
int waitingTime;
int turnaroundTime;
};
if (idx == -1) {
currentTime++;
} else {
processes[idx].remainingTime--;
currentTime++;
if (processes[idx].remainingTime == 0) {
completed++;
executed[idx] = true;
processes[idx].waitingTime = currentTime -
processes[idx].arrivalTime - processes[idx].burstTime;
processes[idx].turnaroundTime = processes[idx].waitingTime +
processes[idx].burstTime;
}
}
}
}
int main() {
int n;
cout << "Enter the number of processes: ";
cin >> n;
vector<Process> processes(n);
cout << "Enter arrival time and burst time for each process:\n";
for (int i = 0; i < n; i++) {
processes[i].id = i + 1;
cout << "Process " << i + 1 << " arrival time: ";
cin >> processes[i].arrivalTime;
cout << "Process " << i + 1 << " burst time: ";
cin >> processes[i].burstTime;
processes[i].remainingTime = processes[i].burstTime;
}
return 0;
}