Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.11.2012, 11:59   #1
emdroof
Пользователь
 
Аватар для emdroof
 
Регистрация: 11.04.2011
Сообщений: 46
По умолчанию Расположены ли столбцы исходного массива в порядке возрастания количества положительных элементов в них

Здравствуйте! Я делаю проект в WinForms и на данном этапе мне надо узнать, расположены ли столбцы исходного массива в порядке возрастания количества положительных элементов в них. Говоря простым языком, если в первом столбце 1 положит. элемент, во втором 3, а в третьем 7 и т.д., то столбцы расположены в порядке возрастания положительных элементов в них. Количество строк и столбцов массива вводится путем введения цифр в textbox'ы, т.е. массив динамический, в этом то и вся проблема.В данном коде я сделал сравнение для первого и второго столбца, вот как теперь сделать это для всех столбцов???
Код:

List<int> list = new List<int>();
            for (int j = 0; j < col; j++)
            {
                for (int i = 0; i < row; i++)
                {
                    if (Convert.ToInt32(dt.Rows[i][0]) >= 0)
                        list.Add(Convert.ToInt32(dt.Rows[i][j]));
                    int l = list.Count() / Convert.ToInt32(textBox1.Text);
                    if (l < Convert.ToInt32(dt.Rows[i][1]))
                       label3.Content = "да";
                   else
                        label3.Content = "нет";
                }
emdroof вне форума Ответить с цитированием
Старый 26.11.2012, 19:05   #2
Selestis
Форумчанин
 
Аватар для Selestis
 
Регистрация: 21.01.2009
Сообщений: 719
По умолчанию

Ну вот например функция проверки сортированности массива по вашим правилам:
Код:
        static bool IsSorted(int[,] arr)
        {
            int lastPositive = 0;
            for (int i = 0; i < arr.GetLength(0); ++i)
            {
                if (arr[i, 0] > 0) lastPositive++;
            }

            for (int j = 1; j < arr.GetLength(1); ++j)
            {
                int positive = 0;
                for (int i = 0; i < arr.GetLength(0); ++i)
                {
                    if (arr[i, j] > 0) positive++;
                }
                if (positive < lastPositive) return false;
                lastPositive = positive;
            }
            return true;
        }
Сделайте такой массив из ваших значений в текстбоксах и вызовите этот метод.
Изобретатель велосипедов
Selestis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C# WinForms (Расположены ли столбцы исходного массива в порядке возрастания количества положительных элементов в них) emdroof Помощь студентам 16 26.11.2012 19:39
Возможен ли подсчет количества положительных элементов массива без указателей? SERG1990 Общие вопросы C/C++ 7 16.03.2012 12:07
В двумерном вещественном массиве 4x4 переставить строки в порядке возрастания максимальных элементов строк (Паскаль) 77SEMI77 Помощь студентам 0 20.01.2012 00:42
Расположе элементов строки массива в порядке возрастания londoncold Помощь студентам 1 21.12.2011 21:04
Расположить элементы массива в порядке возрастания Klik_1602 Помощь студентам 2 04.01.2011 14:59