Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > .NET > Windows Forms
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 06.06.2017, 15:37   #1
AcHt
 
Регистрация: 22.12.2016
Сообщений: 6
Репутация: 10
Восклицание Двумерный массив.Локальные минимумы - C#

Задача такая: Дан двухмерный массив 20 × 20 целочисленных элементов.Найдите все локальные максимумы. (Элемент
является локальным максимумом, если он не имеет соседей, больших, чем он сам).
Помогите !
AcHt вне форума   Ответить с цитированием
Старый 06.06.2017, 16:35   #2
Aleksandr H.
2 the Nation Glory
Профессионал
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Адрес: Wild West Ukraine
Сообщений: 2,351
Репутация: 874

skype: aleksandr.gryb
По умолчанию

Вижу так. проверяем "внутренние" елементы -т.е вокруг элемента 8 соседей
Код:

using System;
namespace ConsoleApplicationForFun
{
    class Program
    {
        static void Main(string[] args)
        {
            Random rnd = new Random();
            int size = 10;
            int[,] a = new int[size, size];
            int[,] b = new int[size, size];
            for (int i = 0; i < a.GetLength(0); i++)
            {
                for (int j = 0; j < a.GetLength(1); j++)
                {
                    a[i, j] = rnd.Next(-10, 10);
                    Console.Write("{0,5}  ", a[i, j]);
                 }
                Console.WriteLine();
            }
            Console.WriteLine("\n\n");
            for (int i = 1; i < a.GetLength(0)-1; i++)
            {
                for (int j = 1; j < a.GetLength(1)-1; j++)
                {
                    if (
                       a[Math.Max(i - 1, 0), Math.Max(0, j - 1)] < a[i, j] &&
                       a[Math.Max(i, 0), Math.Max(0, j - 1)] < a[i, j] &&
                       a[Math.Min(i + 1, a.GetLength(0)-1), Math.Max(0, j - 1)] < a[i, j] &&
                       a[Math.Max(i - 1, 0), Math.Max(0, j)] < a[i, j] &&
                       a[Math.Min(i + 1, a.GetLength(0)-1), Math.Max(0, j)] < a[i, j] &&
                       a[Math.Max(i - 1, 0), Math.Min(a.GetLength(1)-1, j + 1)] < a[i, j] &&
                       a[Math.Max(i, 0), Math.Min(a.GetLength(1)-1, j + 1)] < a[i, j] &&
                       a[Math.Min(i + 1, a.GetLength(0)-1), Math.Min(a.GetLength(1)-1, j + 1)] < a[i, j])
                    {
                        b[i, j] = a[i, j];
                        Console.WriteLine("B[{0},{1}]={2}", i, j, b[i, j]);
                    }
                }
            }

            for (int i = 0; i < b.GetLength(0); i++)
            {
                for (int j = 0; j < b.GetLength(1); j++)
                    if(b[i,j]!=0)
                        Console.Write("{0,5}", b[i, j]);
                    else
                        Console.Write("{0,6}", " ");
                Console.WriteLine();
            }
            Console.ReadLine();
        }
    }
}

__________________
Mailto: media.project@ukr.net
"спасибо" принимаются на webmoney: R676842461689, Z243088649038, U164738001305; AdvancedCash: U853633661253, E181662999107; ПриватБанк.UA
Aleksandr H. вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переписывая все в новый массив,добавить в двумерный массив столбец с заданным номером. anasttb Общие вопросы C/C++ 0 24.05.2017 13:15
Программирование в VBA: двумерный массив M на N, нужно создать новый одномерный массив TheAnnihilyator Помощь студентам 1 04.06.2014 09:16
Двумерный массив развернуть в одномерный массив по строкам[QBASIC] TrueStyle777 Помощь студентам 3 29.05.2013 21:56
как вывести на экран локальные минимумы в среде delphi ? кристина19 Общие вопросы Delphi 12 08.05.2010 19:55
Локальные минимумы и их номера. f4rr3l Паскаль 5 06.01.2009 22:51


22:42.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru