Worst Fit (Memory Partitioning)

#include<stdio.h> 
int main()
{
      int fragments[10], blocks[10], files[10];
      int m, n, number_of_blocks, number_of_files, temp, top = 0;
      static int block_arr[10], file_arr[10];
      scanf("%d",&number_of_blocks);   
      scanf("%d",&number_of_files);
      for(m = 0; m < number_of_blocks; m++) 
      {
            scanf("%d", &blocks[m]);
      }
      for(m = 0; m < number_of_files; m++) 
      {
            scanf("%d", &files[m]);
      }
      for(m = 0; m < number_of_files; m++)
      {
            for(n = 0; n < number_of_blocks; n++)
            {
                  if(block_arr[n] != 1)
                  {
                        temp = blocks[n] - files[m];
                        if(temp >= 0)
                        {
                              if(top < temp)
                              {
                                    file_arr[m] = n;
                                    top = temp;
                              }
                        } 
                  }
                  fragments[m] = top;
                  block_arr[file_arr[m]] = 1;
                  top = 0;
            }   
      }
      printf("\nFile Number File Size Block Number Block Size Fragment");
      for(m = 0; m < number_of_files; m++)
      {
            printf("\n%d %d %d %d %d", m, files[m], file_arr[m], blocks[file_arr[m]], fragments[m]);
      }
      printf("\n");
      return 0;
}
//code by lakshay singhwal

Leave a comment

Design a site like this with WordPress.com
Get started