I have used Visual Studio 2012 for debugging purpose. But you can use any version of visul studio as per your availability.
using System;
class Program
{
static void Main()
{
int[] arr1 = new int[100];
int[] arr2 = new int[100];
int[] mergeArray = new int[100];
int size1, size2, mergeSize;
int index1, index2, mergeIndex;
int i;
//Reads size of the array
Console.WriteLine("Enter the size of 1st array :");
size1 = Convert.ToInt32(Console.ReadLine());
//Reads elements in array
Console.WriteLine("Enter elements in the array: ");
for (i = 0; i < size1; i++)
{
arr1[i] = Convert.ToInt32(Console.ReadLine());
}
//Reads size of the array
Console.WriteLine("Enter the size of 2nd array :");
size2 = Convert.ToInt32(Console.ReadLine());
//Reads elements in array
Console.WriteLine("Enter elements in the array: ");
for (i = 0; i < size2; i++)
{
arr2[i] = Convert.ToInt32(Console.ReadLine());
}
mergeSize = size1 + size2;
//Merging two array in ascending order
index1 = 0;
index2 = 0;
for (mergeIndex = 0; mergeIndex < mergeSize; mergeIndex++)
{
//If all elements of one array is merged to final array
if (index1 >= size1 || index2 >= size2)
{
break;
}
if (arr1[index1] < arr2[index2])
{
mergeArray[mergeIndex] = arr1[index1];
index1++;
}
else
{
mergeArray[mergeIndex] = arr2[index2];
index2++;
}
}
//Merging the remaining elements of array
while (index1 < size1)
{
mergeArray[mergeIndex] = arr1[index1];
mergeIndex++;
index1++;
}
while (index2 < size2)
{
mergeArray[mergeIndex] = arr2[index2];
mergeIndex++;
index2++;
}
//Print merged array
Console.WriteLine("\nArray merged in ascending order : ");
for (i = 0; i < mergeSize; i++)
{
Console.Write("\t" + mergeArray[i]); ;
}
Console.ReadLine();
}
}
I have used Visual Studio 2012 for debugging purpose. But you can use any version of visul studio as per your availability.
Result:
Enter the size of 1st array :
4
Enter elements in the array:
2
4
6
10
Enter the size of 2nd array :
4
Enter elements in the array:
1
3
5
7
Array merged in ascending order :
1 2 3 4 5 6 7 10
need an explanation for this answer? contact us directly to get an explanation for this answer