Сортировка данных в массиве из 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);
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.25 из 5
Похожие ответы