Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/13: Рейтинг темы: голосов - 13, средняя оценка - 5.00
5 / 5 / 11
Регистрация: 25.01.2015
Сообщений: 205
1

Выборка определённой строки в массиве

12.10.2015, 21:22. Показов 2493. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Объясните теоретическую часть. Т.е у меня есть массив [n] [n] - пусть будем матрицей
Мне нужно 2 цикла: 1) Отвечает за количество повторений 2го, т.е он это кордината высоты. 2) Отвечает за длину
Но если я задам ,например, Высоту 3 и длину 3 ,
то он заберет мне квадрат:
X|X|X
X|X|X
X|X|X , а если мне нужна строка 3 и длина 3, то я что должен сделать? Указать массив Array[ , ] с этим сложнее всего мне,где написать условие, которое заберет лишь эту часть? Или я могу с помощью первого цикла, ограничив цикл ( i=2; i <= 3,i++),
а второй сделать ( j=0;j<3;j++) ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.10.2015, 21:22
Ответы с готовыми решениями:

Переписывание определённой строки в txt
Делаю класс конфигурирования. using System; using System.Collections.Generic; using...

Удаление определённой строки из .txt
Искал на форуме, так должного ответа и не нашёл... Как из .txt удалить определённую строку......

Извлечение определённой строки из txt файла
вот код чтения файла и добавления в datagridview строк какое условие надо дописать чтобы он...

Извлечение определённой строки из txt файла
Помогите пожалуйста. Скажите как прочитать из файла строку тока с определённым названием. ...

7
Администратор
Эксперт .NET
9602 / 4744 / 761
Регистрация: 17.04.2012
Сообщений: 9,592
Записей в блоге: 14
12.10.2015, 21:37 2
Цитата Сообщение от Shadevskiy Посмотреть сообщение
Высоту 3 и длину 3
Цитата Сообщение от Shadevskiy Посмотреть сообщение
строка 3 и длина 3
Запутался я в ваших понятиях. Давайте сначала. В матрице есть столбцы и строки. Что из этого вы хотите получить?
1
12 / 12 / 20
Регистрация: 07.10.2015
Сообщений: 51
12.10.2015, 21:40 3
Да, можно сделать такой цикл.
1
5 / 5 / 11
Регистрация: 25.01.2015
Сообщений: 205
12.10.2015, 21:45  [ТС] 4
Давайте, я попробую наглядно показать.
Я хочу взять, допустим, элементы массива , которые находятся
X|X|X
X|X|X
1|1|1
For ( i=2; i<=3;i++)
for ( j=1; j <=3;j++)
Но я не понимаю , что писать в Console.WriteLine (array [X , Y ]); В Х - мне нужно написать - это кордината по высоте , а в Y по длине. Т.е Array [ i,j] ,так?
0
Эксперт .NET
5871 / 4748 / 2940
Регистрация: 20.04.2015
Сообщений: 8,361
12.10.2015, 21:50 5
Лучший ответ Сообщение было отмечено Shadevskiy как решение

Решение

Shadevskiy,
сложно понять вопрос, но если нужно из массива получить прямоугольную область, то можно воспользоваться методом:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
static int[,] GetArray(int[,] array, int startRow, int rowCount, int startColumn, int columnCount)
{
    int rowIndex, columnIndex;
    int[,] retArray = new int[rowCount, columnCount];
    for (int i = 0; i < rowCount; i++)
    {
        rowIndex = i + startRow;
        for (int j = 0; j < columnCount; j++)
        {
            columnIndex = j + startColumn;
            retArray[i, j] = array[i, j];
        }
    }
    return retArray;
}
обратиться к нему можно так:
C#
1
int[,] a1 = GetArray(array, 1, 3, 0, 4);
1
5 / 5 / 11
Регистрация: 25.01.2015
Сообщений: 205
12.10.2015, 22:10  [ТС] 6
Задание переменных,с помощью static int , мне понравилось - очень сэкономит время.
А на счет массива , мне выдает ошибку: " Не содержит статический метод Main, подходящий для точки входа".
А еще : разве там не должны быть тогда координаты (0,3,0,4) - там же вроде с нуля все идет ,если я правильно понял.
Можно ли пример исполнения , не важно какой : вывод , подсчет суммы или чего угодно с этой областью - а то я раньше не видел функции GetArray(array, 1, 3, 0, 4);
0
Эксперт .NET
5871 / 4748 / 2940
Регистрация: 20.04.2015
Сообщений: 8,361
12.10.2015, 22:48 7
Лучший ответ Сообщение было отмечено tezaurismosis как решение

Решение

Shadevskiy,
легко, правда в предыдущем варианте метода чуть ошибся с индексами, но здесь исправлено:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
using System;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int[,] array = {{ 1, 2, 5, 3, 2, 5 },
                            { 2, 3, 5, 7, 2, 1 },
                            { 3, 7, 5, 3, 8, 2 },
                            { 4, 2, 5, 3, 6, 1 },
                            {5, 4, 5, 3, 2, 7 }};
            int[,] a1 = GetArray(array, 1, 3, 0, 4); //из array берем 3 строки начиная с 1-й , 4 столбца, начиная с 0-го
            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 4; j++)
                {
                    Console.Write(a1[i, j] + " ");
                }
                Console.WriteLine();
            }
            Console.ReadKey();
        }
 
        static int[,] GetArray(int[,] array, int startRow, int rowCount, int startColumn, int columnCount)
        {
            int rowIndex, columnIndex;
            int[,] retArray = new int[rowCount, columnCount];
            for (int i = 0; i < rowCount; i++)
            {
                rowIndex = i + startRow;
                for (int j = 0; j < columnCount; j++)
                {
                    columnIndex = j + startColumn;
                    retArray[i, j] = array[rowIndex, columnIndex];
                }
            }
            return retArray;
        }
    }
}
1
5 / 5 / 11
Регистрация: 25.01.2015
Сообщений: 205
12.10.2015, 22:49  [ТС] 8
Спасибо ^^
0
12.10.2015, 22:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.10.2015, 22:49
Помогаю со студенческими работами здесь

Выборка определённой записи из базы данных в отчёт (QReport)
Пожалуйста помогите написать код выборки определённой записи из базы данных в отчёт...

Перенос строки в Memo1 при достижении определённой длины строки
Здравствуйте. помогите. забуксовал. как правильно перенести строку в Memo1 при достижении...

Размещение объектов типов определённой иерархии в массиве и их отображение
Имеется иерархическая цепочка наследуемых классов: базовый, автомобили, автомобили для перевозки...

Удалить все символы после определённой позиции в массиве
Подскажите, как удалить все символы после определённой позиции в массиве? Не использвуя при этом...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru