Сортировка данных в массиве из 2 столбцов и 10 строк - C#
Формулировка задачи:
Здравстуйте!
Прошу Вас помочь написать программу по следующему условию:
Дана матрица из 2 столбцов и 10 строк. Первый элемент каждой строки представляет общее число студентов, а второй-число отличников в одной из 10 групп. Номер строки соответствует номеру группы на учебном потоке. Отпечатать номера групп, где отличников более 15%, и число таких групп.
Сам сделал только вывод массива, но и то он не до конца соответствует условию..(значения в первом столбце должны быть больше значений второго столбца)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication251
{
class Program
{
static void Main(string[] args)
{
int[,] a = new int[10, 2];
Random rand = new Random();
Console.WriteLine("Колличество студентов и отличников попарно: ");
for (int j = 0; j < 10; j++)
{
for (int i = 0; i< 2; i++)
{
a[j, i] = rand.Next(0, 50);
Console.Write(a[j, i]+"\t");
}
Console.WriteLine();
}
Console.ReadLine();
}
}
}Решение задачи: «Сортировка данных в массиве из 2 столбцов и 10 строк»
textual
Листинг программы
using System;
class Program
{
const int MIN_STUDENTS_RESULT = 15;
static void Main(string[] args)
{
Random rnd = new Random();
int row = 10;
int col = 2;
int[,] myArray = new int[row, col];
int studentsCount, studentsBestCount;
for (int i = 0; i < row; i++)
{
studentsCount = rnd.Next(0, 50);
myArray[i, 0] = studentsCount;
studentsBestCount = rnd.Next(0, studentsCount);
myArray[i, 1] = studentsBestCount;
}
Console.WriteLine("{0,-10}{1,-14}{2,-14}", "Номер", "Количество", "Количество");
Console.WriteLine("{0,-10}{1,-14}{2,-14}", "группы:", "студентов:", "отличников:\n");
for (int i = 0; i < row; i++)
{
studentsBestCount = myArray[i, 1];
studentsCount = myArray[i, 0];
int result = studentsCount != 0 ? (studentsBestCount * 100) / studentsCount : 0;
if (result > MIN_STUDENTS_RESULT)
Console.WriteLine("{0,7}{1,13}{2,14}", i, studentsCount, studentsBestCount);
}
Console.ReadKey(false);
}
}