Помогите разобраться с кодом расчета min, max, average - C#

Узнай цену своей работы

Формулировка задачи:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int min, max;
            double i =  0;
            int[,] Arr = new int[10, 10];
            Random rand = new Random();
            for (int a = 0; a < Arr.GetLength(0); a++)
            {
                for (int b = 0; b < Arr.GetLength(1); b++)
                {
                    Arr[a, b] = rand.Next(-20, 20);
                    Console.Write(Arr[a,b] + "\t");
                }
            }
            min = max = Arr[0, 0];
            for (int a = 0; a < Arr.GetLength(0); a++)
            {
                for (int b = 0; b < Arr.GetLength(1); b++)
                {
                    if (min > Arr[a, b]) min = Arr[a, b];
                    if (max < Arr[a, b]) max = Arr[a, b];
 
                }
            }
            for (int a = 0; a < Arr.GetLength(0); a++)
            {
                for (int b = 0; b < Arr.GetLength(1); b++)
                {
                    i = i + Arr[a, b];
 
                }
            }
            i = i / (Arr.Length - 1);
            Console.WriteLine("Минимальное значение " + min);
            Console.WriteLine("Максимальное значение " + max);
            Console.WriteLine("Среднее значение " + i);
 
            Console.ReadLine();
 
        }
    }
}
Помогите поэтапно разобрать работу этой программы

Решение задачи: «Помогите разобраться с кодом расчета min, max, average»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int min, max; // Объявляем переменные целого типа
            double i = 0; // и инициализируем переменную вещественного типа
            int[,] Arr = new int[10, 10]; // объявляем двумерный массив целого типа размерность 10х10 
            Random rand = new Random(); // Инициализируем объект класса Random (генератор случайных чисел)
            // В следующем двухуровневом цикле забиваем в наш массив данные
            for (int a = 0; a < Arr.GetLength(0); a++)
            {
                for (int b = 0; b < Arr.GetLength(1); b++)
                {
                    Arr[a, b] = rand.Next(-20, 20); // От -20 до +19 включительно!
                    Console.Write(Arr[a, b] + "\t");// И сразу же выводим значение на консоль (\t - Горизонтальная табуляция)
                }
            }
            min = max = Arr[0, 0]; // мину и максу присваиваем первый элемент из массива 
            // В следующем двухуровневом цикле ищем минимальный и максимальный элемент из нашего двумерного массива
            for (int a = 0; a < Arr.GetLength(0); a++)
            {
                for (int b = 0; b < Arr.GetLength(1); b++)
                {
                    if (min > Arr[a, b]) min = Arr[a, b]; // если вдруг находим элемент значение которого меньше минимума, то теперь минимуму присваиваем значение этого элемента массива
                    if (max < Arr[a, b]) max = Arr[a, b]; // если вдруг находим элемент значение которого больше максимума, то теперь максимуму присваиваем значение этого элемента массива
 
                }
            }
            // В следующем двухуровневом цикле суммируем все элементы и записываем значение в переменную i, кстати, это можно было сделать и в прошлом цикле, да и вообше всё можно было сделать в одном цикле: и присваивание рандомных значений и нахождение мин/макса и нахождение суммы эл-ов
            for (int a = 0; a < Arr.GetLength(0); a++)
            {
                for (int b = 0; b < Arr.GetLength(1); b++)
                {
                    i = i + Arr[a, b];
 
                }
            }
            i = i / (Arr.Length - 1); // Здесь находим среднее арифметическое значение по нашему двумерному массиву (матрице), делим сумму элементов на количество элементов
            // Далее выводим найденные значения на экран
            Console.WriteLine("Минимальное значение " + min);
            Console.WriteLine("Максимальное значение " + max);
            Console.WriteLine("Среднее значение " + i);
 
            Console.ReadLine(); // Приостанавливаем консоль до нажатия enter
 
        }
    }
}

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


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

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

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