Написать функцию нахождения максимального числа - C#

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

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

Здравствуйте, мне нужно написать функцию нахождения максимального числа из четырех чисел. Условие звучит так: Выставка проходит в зале, разделенном на MxN павильонов. Каждая из 4 стен имеет дверь в соседний павильон (кроме граничных). Каждый павильон раздает посетителям предмет одного вида, выдают только один раз в одни руки. Однако посещать данный павильон можно сколь угодно раз. Путь начинается с (1,1) и состоит и последовательности координат. Необходимо выяснить, на какую максимальную сумму можно набрать предметов в течение К минут, если на посещение одного павильона дается 1 минута.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int n, m, i, j, k;
            Console.WriteLine("Введите n: ");
            n = Int32.Parse(Console.ReadLine());
            Console.WriteLine("Введите m: ");
            m = Int32.Parse(Console.ReadLine());
            int[,] mas = new int[n, m];
            Console.WriteLine();
            Console.WriteLine("Введите элементы массива: ");
            for (i = 0; i < n; i++)
            {
                for (j = 0; j < m; j++)
                {
                    mas[i, j] = int.Parse(Console.ReadLine());
                }
            }
            Console.WriteLine("Вот он, выставочный зал: ");
            for (i = 0; i < n; i++)
            {
                for (j = 0; j < m; j++)
                {
                    Console.Write(mas[i, j] + "\t");
                }
                Console.WriteLine();
            }
            Console.WriteLine("------------------------------------------------");
            Console.WriteLine("Введите количество минут на посещение выставки: ");
            k = Int32.Parse(Console.ReadLine());
            int cur = mas[0, 0];
 
            for (i = 1; i < k; i++)
            {
                for (j = 1; j < k; j++)
                {
                    cur = max(mas[i - 1, j], mas[i + 1, j], mas[i, j - 1], mas[i, j + 1]) + mas[i, j];
                }
            }
            Console.WriteLine("Максимальная сумма составляет: " + cur);
            Console.ReadKey();
        }
 
        public static int max(int v1, int v2, int v3, int v4)
        {
            throw new NotImplementedException();
        }
    }
}

Решение задачи: «Написать функцию нахождения максимального числа»

textual
Листинг программы
public static int Max(int v1, int v2, int v3, int v4)
{
    return Math.Max(Math.Max(v1, v2), Math.Max(v3, v4));
}

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


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

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

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