Q: 1. Write method to sort the two array by names.
2. Write method to sort the two array by grades.
namespace SortingParallelArray
{
class Program
{
static void Main(string[] args)
{
string[] names = { "Zau", "Bob", "Sam", "Eve", "Roy", "Mack", "Jack", "Anna", "Kety" };
int[] grades = { 99, 87, 91, 88, 77, 93, 90, 86, 95 };
DisplayArrays(names, grades);
Console.WriteLine("\n================================\n\n");
BubbleSortByName(names, grades);
DisplayArrays(names, grades);
Console.WriteLine("\n================================\n\n");
BubbleSortByGrade(names, grades);
DisplayArrays(names, grades);
Console.ReadKey();
}
//=======================Methods===========================
static void DisplayArrays(string[] name, int[] grade)
{
Console.WriteLine("Names Grades");
Console.WriteLine("========================");
for (int i = 0; i < name.Length; i++)
{
Console.WriteLine("{0} {1}", name[i].PadRight(15), grade[i]);
}
}
//Bubble sort by name:
static void BubbleSortByName(string[] name, int[] grade)
{
for (int i = name.Length - 1; i > 0; i--)
{
for (int j = 0; j <= i - 1; j++)
{
if (name[j].CompareTo(name[j+1]) > 0)
{
string temp1 = name[j];
name[j] = name[j + 1];
name[j + 1] = temp1;
int temp2 = grade[j];
grade[j] = grade[j + 1];
grade[j + 1] = temp2;
}
}
}
}
//Bubble sort by grade:
static void BubbleSortByGrade(string[] name, int[] grade)
{
for (int i = grade.Length - 1; i > 0; i--)
{
for (int j = 0; j <= i - 1; j++)
{
if (grade[j].CompareTo(grade[j + 1]) < 0)
{
int temp1 = grade[j];
grade[j] = grade[j + 1];
grade[j + 1] = temp1;
string temp2 = name[j];
name[j] = name[j + 1];
name[j + 1] = temp2;
}
}
}
}
}
}
No comments:
Post a Comment