Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Многомерный массив 
:(
    Опции темы
ody
  Дата 17.2.2013, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 9.2.2013

Репутация: нет
Всего: нет



Товарищи Форумчане появилась проблема, а точнее не как не могу осуществить задуманную идею.
Есть многомерный массив содержащий элементы и заполняемый значениями полученными из формулы
Код

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication2
{

    class Sample
    {

        static void Main()
        {
            int m1=1, n1=2;
            double[,] Massiv = new double[5, 5];
            List<double> listmin = new List<double>();
            for (int m = 0; m < 5; m++)
            {
                Console.WriteLine("новый");
                for (int n = 0; n < 5; n++)
                {
                    Massiv[m, n] = 2 / Math.Sqrt(Math.Pow(m / 1, 2) + Math.Pow(n / 0.5, 2));
                    Console.WriteLine("{0}:{1} = {2}", m, n, Massiv[m, n]);

                }
            }
            
            Console.WriteLine("\n Число с индексом {0}:{1} = {2}", m1, n1, Massiv[m1, n1]);

            Console.WriteLine("\nс индексами отличными от нуля");
            for (int m = 0; m < 5; m++)
            {
                for (int n = 0; n < 5; n++)
                {
                    if(m>0 && n>0)
                    Console.WriteLine("{0}:{1} = {2}", m, n, Massiv[m, n]);

                }
            }
            Console.WriteLine("\nС индексами принимающими 0 но не одновременно");

            for (int m = 0; m < 5; m++)
            {
                for (int n = 0; n < 5; n++)
                {
                    if (m == 0 && n > 0 || n == 0 && m > 0)
                        Console.WriteLine("{0}:{1} = {2}", m, n, Massiv[m, n]);

                }
            }

            Console.Read();
        }



    }
}

Нужно найти максимально минимальный элемент и максимально минимальный элемент от заданного элемента. т.е. здесь уже задан элемент с индексом 1:2 ~0,485.  Максимально минимальный элемент 4:1 и 2:2 и равны 0,447. а минимально максимальный 2:1 и равен 0,5. 
Мне нужен код который будет искать искать эти значения основываясь на введенном элементе. вот ломал голову как сделать это! и есть один нюанс! если задан элемент с индексами не равным 0 то и искаться min и max должны среди элементов индексы которых не равны 0. Надеюсь на вашу помощь! буду очень благодарен!
PM MAIL   Вверх
ody
Дата 17.2.2013, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 9.2.2013

Репутация: нет
Всего: нет



Люди добрые помогите. очень нужно!

PM MAIL   Вверх
Экскалупатор
Дата 17.2.2013, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 11
Всего: 24



Цитата(ody @  17.2.2013,  08:38 Найти цитируемый пост)
Максимально минимальный


Цитата(ody @  17.2.2013,  08:38 Найти цитируемый пост)
минимально максимальный


 smile 
колдунство какое то страшное  smile 
я так понимаю, что первое это самое маленькое значение(тогда это просто минимальное). хотя где то у меня есть мысль что имеется ввиду значение, которое максимальное из всех значений, которые меньше заданного?

и со вторым определением тож самое, надо значение которое будет наименьшим из всех чисел, которые больше заданного?

про индексы вообще в каком то тумане. индексы не 0, т.е. ВСЕ кроме 0? или ВСЕ такие же как заданный индекс?

в общем конкретнее надо бы...

приведи пример работы программы. напиши небольшой массив и распиши что и как дожно искаться.
PM MAIL ICQ   Вверх
ody
  Дата 17.2.2013, 20:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 9.2.2013

Репутация: нет
Всего: нет



1:1 = 0.894427190999916
1:2 = 0.485071250072666
1:3 = 0.328797974610715
1:4 = 0.248069469178417
2:1 = 0.707106781186547
2:2 = 0.447213595499958
2:3 = 0.316227766016838
2:4 = 0.242535625036333
3:1 = 0.554700196225229
3:2 = 0.4
3:3 = 0.298142396999972
3:4 = 0.234082294392261
4:1 = 0.447213595499958
4:2 = 0.353553390593274
4:3 = 0.277350098112615
4:4 = 0.223606797749979

попробую выразится яснее))))
вот часть массива! есть число: (1:2 это его место в массиве)
1:2 = 0.485071250072666
мне нужно найти ни самое минимальное и самое максимальное число, а максимальное из из минимальных до 0.485071250072666 и минимальное из максимальных от 0.485071250072666

то есть это тоже самое последовательность
1, 2, 3, 4, 5, 6, 7

есть число 5 и для него максимальный из минимальных будет 4 а минимальный из максимальных 6!
Только в массиве все числа идут не отсортированные и нужно построить условие чтобы найти среди них условно 4 и 6. Думал отсортировать массив, а потом поиском найти элемент и взять следующий и предыдущий элемент, но тогда теряется их строгая последовательность, а это очень важно сохранить их последовательность! В общем массив Нужно оставить нетронутым! smile 
PM MAIL   Вверх
IBS
Дата 18.2.2013, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 214
Регистрация: 29.7.2008
Где: Белоруссия

Репутация: 1
Всего: 6



в чем проблема, то! Задал минимальным (min) любое число, пошел по всему массиву и смотришь: если выполняется условие(min>a[x,y] && a[x,y]>0.485071250072666) то загнать его в min...

Это сообщение отредактировал(а) IBS - 18.2.2013, 12:24
PM MAIL   Вверх
Экскалупатор
Дата 19.2.2013, 01:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 11
Всего: 24



Цитата(ody @  17.2.2013,  19:18 Найти цитируемый пост)
Думал отсортировать массив, а потом поиском найти элемент и взять следующий и предыдущий элемент, но тогда теряется их строгая последовательность, а это очень важно сохранить их последовательность! В общем массив Нужно оставить нетронутым!

ну как вариант можно сделать из одного массива два, и сортировать их. т.е. из массива вида 4,8,5,3,8,0,7,34,1 при введенном числе "0", получаем два массива
4,8,5,3,8 и 7,34,1
сортируем их и берем нужные элементы.

еще можно взять следующий вариант, для решения задачи без сортировки массива и что бы был только один проход по массиву. реализуем банально поиск min и max, так как сказал IBS, т.е. задаем первое число из той части массива, в которой будем искать, как min max соответственно. потом проверяем каждое следующее число на соответствие условию. и таким образом находим то что нам нужно.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.2387 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.