Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Randomly generate an array of 100 integer numbers ranging from 100 to 999. (A) I

ID: 3587370 • Letter: R

Question

Randomly generate an array of 100 integer numbers ranging from 100 to 999.

(A) Identify the indexes of 3 largest numbers in the array using 3 variables. ( Use only comparisons. Cannot use sorting method for this request.)

(B) Identify the original indexes of ascending-sorted numbers in the array. You may use a sorting algorithm and another array for 100 indexes.

Display the original numbers using 10 lines with 10 numbers in each line. Then (A) answer and then (B) answer. Submit the C# codes and the cropping of the above results in a Word document.

can someone fix my code?

Random rnd = new Random();
int[] arr = new int[100];
int i, counter = 0;
for (i = 0; i < 100; i++)
{
int rndNumber = rnd.Next(100, 999);
arr[i] = rndNumber;
}
// index statement
int max1 = arr[0];
int max2 = arr[0];
int max3 = arr[0];
int index1 = 0;
int index2 = 0;
int index3 = 0;
//breakstatemnt
for (i = 0; i < 100; i++)
{
if (arr[i] > max3 && arr[i] <= max2)
{
max3 = arr[i];
index3 = i;
}
if (arr[i] < max2 && arr[i] >= max1)
{
max3 = max2;
index3 = index2;
max2 = arr[i];
index2 = i;
}
if (arr[i] < max1)
{
max3 = max2;
index3 = index2;
max2 = max1;
index2 = index1;
max1 = arr[i];
index1 = i;
}
}
//sorted array
Console.WriteLine("Array:");
Array.Sort(arr);
for (i = 0; i < arr.Length; ++i)
{
Console.Write(arr[i] + " ");
counter++;
if (counter == 10) { Console.Write(" "); counter = 0; }
}
//output
Console.WriteLine();
Console.WriteLine("Index: " + index1 + " Value: " + max1);
Console.WriteLine("Index: " + index2 + " Value: " + max2);
Console.WriteLine("Index: " + index3 + " Value: " + max3);

Array.Sort(arr);
for (i = 0; i < 100; i++)
{
if (i % 10 == 0)

Console.WriteLine("sorted array");
Console.Write(arr[i] + " ");
}
Console.WriteLine();
Console.Read();

Explanation / Answer

Random rnd = new Random();
int[] arr = new int[100];
int i, counter = 0;
for (i = 0; i < 100; i++)
{
int rndNumber = rnd.Next(100, 999);
arr[i] = rndNumber;
}
// index statement
int max1 = arr[0];
int max2 = arr[0];
int max3 = arr[0];
int index1 = 0;
int index2 = 0;
int index3 = 0;
//breakstatemnt
for (i = 0; i < 100; i++)
{
               //modified code
               if(arr[i]>max1)
               {
                   max3=max2;
                   index3 = index2;//updating 3rd large value
                  
                   max2 = max1;
                   index2 = index1;//updtaing secode large value
                  
                   max1 = arr[i];
                   index1= i;//updating third large value...
                      
               }
              
               /*
if (arr[i] > max3 && arr[i] <= max2)
{
max3 = arr[i];
index3 = i;
}
if (arr[i] < max2 && arr[i] >= max1)
{
max3 = max2;
index3 = index2;
max2 = arr[i];
index2 = i;
}
if (arr[i] < max1)
{
max3 = max2;
index3 = index2;
max2 = max1;
index2 = index1;
max1 = arr[i];
index1 = i;
}*/
}
  
           Console.WriteLine();
Console.WriteLine("Largest value Index: " + index1 + " Value: " + max1);
Console.WriteLine("Seconde largest value Index: " + index2 + " Value: " + max2);
Console.WriteLine("Third Largest value Index: " + index3 + " Value: " + max3);
           //sorted array
  
  
Console.WriteLine("Array:");
//Array.Sort(arr);
int[] b = new int[100];//creating new array with 100 elements
  
for(i=0;i<100;i++)
{
               //storing index positions of arr elements in b
               b[i]=i;  
           }
          
          
           //sorting arr by keeping previous index positions...
          
          
           for(i=0;i<100;i++)//sorting and keeping index positions
           {
               for(j=0;j<100;j++)
               {
                   if(arr[i]<arr[j])
                   {
                       //swapping
                       int k=arr[i];
                       arr[i]=arr[j];
                       arr[j]=i;
                      
                       k = b[i];
                       b[i]=b[j];
                       b[j]=k;//swapping previous index values also...  
                   }
                      
               }  
           }
          
          
           Console.WriteLine("After Sorting : ");
           for (i = 0; i < arr.Length; ++i)
{
Console.Write(arr[i] + " and its previsou position :"+b[i]);

}
          
          
/*
for (i = 0; i < arr.Length; ++i)
{
Console.Write(arr[i] + " ");
counter++;
if (counter == 10) { Console.Write(" "); counter = 0; }
}
//output
Console.WriteLine();
Console.WriteLine("Index: " + index1 + " Value: " + max1);
Console.WriteLine("Index: " + index2 + " Value: " + max2);
Console.WriteLine("Index: " + index3 + " Value: " + max3);
Array.Sort(arr);
for (i = 0; i < 100; i++)
{
if (i % 10 == 0)
Console.WriteLine("sorted array");
Console.Write(arr[i] + " ");
}
Console.WriteLine();
Console.Read()*/;