السلام عليكم
حاليا اكتب كود لعمل non-primitive sjf .. فاهم جدا لكيفيه حل هذه المسأله السهله .. يجب ان ناخذ اقل burst time
قمت بكتابة هذا الكود
#include <iostream>
using namespace std;
int main(){
int processNumber; // number of process
cout <<"please enter the number of process: ";
cin >> processNumber;
// int queue[processNumber]; // declare queue
int burstTime[processNumber]; // declare burst time
int arrivalTime[processNumber]; // declare arrival time
// input
for(int i=0; i<processNumber; i++){
cout << "p" << i << ":" << endl;
cout <<"Burst time: ";
cin >> burstTime;
cout <<"Arrival time: ";
cin >> arrivalTime;
}
// output
cout<<"Process" << "\t" << "Burst" << "\t" << "Arrival" << endl;
for(int i=0; i<processNumber; i++){
cout <<"p" << i << "\t " << burstTime << "\t " << arrivalTime << endl;
}
// counting
int shortest;
int shorter[processNumber];
for(int i=0; i<processNumber; i++){
shortest = burstTime[0];
if(burstTime[i+1] > shortest and burstTime[i+1] < burstTime) shorter = burstTime[i+1];
cout << shorter << endl;
}
return 0;
}المشكله عندي في فهم المنطق .. اريد الان من المصفوفه shorter ان تخزن اصغر الارقام من burst time
مثال
burst time
5
2
4
3
الناتج يصبح:
2
3
4
5
المساله بسيطه لكن لا اعلم كلما حاولت التفكير في حلها أشعر بصداع!!
كيف اقوم بعمله؟
