Hi. I'm trying to do shortest seek time first algorithm. I have this current code, and when I run it, I get this error:
InvalidArgument=Value of '1' is not valid for 'index'.
Parameter name: index Does anyone have a solution for my problem? Thank you!
private void btnSimulate_Click(object sender, EventArgs e)
{
int[] mylist = new int[lstbxQueue.Items.Count];
int indexOfNearest = 0;
while (lstbxQueue.Items.Count != 0)
{
for (int i = 0; i < lstbxQueue.Items.Count; i++)
{
int subtrahend = Convert.ToInt32(txtHeader.Text) - Convert.ToInt32(lstbxQueue.Items[i]);
int minuend = Convert.ToInt32(txtHeader.Text) - Convert.ToInt32(lstbxQueue.Items[indexOfNearest]);
if (subtrahend < 0)
{
subtrahend = subtrahend * -1;
}
if (minuend < 0)
{
minuend = minuend * -1;
}
if (subtrahend < minuend)
{
indexOfNearest = i;
}
}
int difference = Convert.ToInt32(txtHeader.Text) - Convert.ToInt32(lstbxQueue.Items[indexOfNearest]);
if (difference < 0)
{
difference = difference * -1;
}
lstboxSimulate.Items.Add(lstbxQueue.Items[indexOfNearest]);
lstbxQueue.Items.RemoveAt(indexOfNearest);
}
for (int x = 0; x < lstbxQueue.Items.Count; x++)
{
mylist[x] = lstboxSimulate.Items.Add(lstbxQueue.Items[indexOfNearest]);
}
foreach (int a in mylist)
{
lstboxSimulate.Items.Add(a);
}
}