3.Non preemptive Scheduling algorithms in C

3.Non preemptive Scheduling algorithms in c

#include<stdio.h>
int n;
int tp[20],bt[20];
int mi,iSave;
int total;
void min(int bt,int i_save)
{
if( mi > bt)
{
mi = bt;
iSave = i_save;
}
}
int ar[20];
void calculation()
{
printf(“\n0”);
total = 0 ;
for( int j = 0 ; j < n ; j++)
{
mi=129350;

for(int i = 0 ; i < n; i++ )
{
if(bt[i]==-2)
continue;
if(bt[i]==0)
break;
min( tp [i],i);
}

ar[iSave]=total;
total = total + bt[iSave];
printf(“—p%d—%d”,iSave+1,total );
bt[iSave] = – 2 ;
}
}

void input()
{
for( int i = 0 ; i < n ; i++)
{
scanf(“%d”,&bt[i]);
scanf(“%d”,&tp[i]);
}
}

void output()
{
for( int i = 0 ; i < n ; i++)

{
printf(“\nWTP%d = %d”,i+1,ar[i]);
}
}
int main()
{

scanf(“%d”,&n);
input();
calculation();
output();
return 0;
}

Sample Input :

5
4 1
3 5
8 4
6 3
14 2

Sample Output :

1