Главная Настройка Mobile Контакты NSFW Каталог Пожертвования Купить пасскод Pics Adult Pics API Архив Реквест доски Каталог стикеров Реклама
Доски


[Ответить в тред] Ответить в тред

Check this out!

[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 83 | 4 | 26
Назад Вниз Каталог Обновить

Аноним 05/12/17 Втр 06:33:30  166339586  
dddfdfr.png (9Кб, 632x442)
Памагите с С#.
Вот есть матрица. В ней последний столбец и в нем числа. Надо строки в матрице переставить так, чтобы получилось, что в последнем столбце числа по возрастанию стоят.

Как это сделать? Я могу отсортировать только числа в одном столбце, но не могу понять как переставить заодно и строки.
Я не спал больше суток и похоже уже не смогу сам додумать. Помогите исправить ошибки.

Вот код который сортирует последний столобец. Но как заставить его переставлять строки вместе с числами из последнего столбца? Я уже все перепробовал.

for (int i = 0; i < n; i++)
{
for (int j = 0; j < n - 1; j++)
{
if (arr2[j + 1, n] < arr2[j, n])
{
int t = arr2[j,n];
arr2[j, n] = arr2[j + 1, n];
arr2[j + 1, n] = t;
}
}
}
Аноним 05/12/17 Втр 06:35:44  166339633
15097840703562.jpg (1022Кб, 1920x1440)
Похоже я споткнусь на финише и так и не сдам эту лабораторную.
Аноним 05/12/17 Втр 06:37:31  166339673
Зачем пары проебывал? Там все рассказывали же.
Аноним 05/12/17 Втр 06:38:24  166339687
Думай головой, пидорас. Начинай реализовывать идею с конца. Нахуя вообще поступал, чёрт ебучий? Чтобы по каждому пуку никчемные треды свои создавать? Только что решил эту хуйню в голове. Задавай ответы.
Аноним 05/12/17 Втр 06:39:20  166339702
>>166339673
Так и представляю, как на С#-парах по байтам рассматривают различные алгоритмы модификаций матриц.
Аноним 05/12/17 Втр 06:40:31  166339735
Задачу исходную покажи
Аноним 05/12/17 Втр 06:41:15  166339757
>>166339586 (OP)
Зачем тебе внешний цикл? Ты же его никак не используешь просто повторяешь внутренний n раз, зачем?
Аноним 05/12/17 Втр 06:43:08  166339807
>>166339687
Ну как решить? Не выходит переставить строки целиком.
Аноним 05/12/17 Втр 06:43:30  166339814
>>166339586 (OP)
Отчисляйся, это не твоё, если в таком простом месте разобраться не можешь, то дальше будет только хуже, так что тобi пiзда тiкай з городу
Аноним 05/12/17 Втр 06:43:48  166339820
>>166339735
Вот и исходная, считай что. Остальное я уже порвал себе сраку и сделал. Осталось расставить строки по порядку и все.
Аноним 05/12/17 Втр 06:44:20  166339833
>>166339814
Ну я тешу себя мыслью, что я просто не выспался, а не настолько тупой.
Аноним 05/12/17 Втр 06:46:54  166339911
>>166339814
Дваждую
>>166339833
Так не бывает. Ты либо можешь решить, либо нет, как бы ты не выспался. Тем более на такой хуйне
>>166339807
Думай, пидорасина тупая. Пиши костыли, а потом упрощай код.
Аноним 05/12/17 Втр 06:49:43  166340002
>>166339757
А вот хуй. Без внешнего цикла не робит.
Аноним 05/12/17 Втр 06:50:22  166340026
>>166339586 (OP)
В виде чего у тебя матрица хранится?
Аноним 05/12/17 Втр 06:50:59  166340041
>>166339911
>Думай, пидорасина тупая.
Ну я тупой. Ни магу. Покажи как надо.
Не, серьезно. Если не трудно, не мог бы указать на ошибку. Я на примерах быстрее обучаюсь.
Аноним 05/12/17 Втр 06:51:23  166340055
>>166340026
двумерный массив int
Аноним 05/12/17 Втр 06:53:27  166340101
>>166340041
> Ну я тупой. Ни магу. Покажи как надо.
Ты нахуя поступал? Если проебываешь пары и тупишь на такой хуйне, значит профессию ты не осилишь, и она тебе неинтересна, поэтому не трать своё и чужое время – отчисляйся нахуй.
Аноним 05/12/17 Втр 06:54:05  166340113
>>166340041
> я тупой немагу
Тогда прямо сейчас в деканат, а потом к военкому, чтоб мозгов набраться
Аноним 05/12/17 Втр 06:56:29  166340179
Сортируй, блять, крайний столбец обычным пузырьком. А перестановку строк делай тем же самым принципом, но только возми еще один вложенный цикл, чтобы каждый элемент в строчке поменять местами с другим.
Аноним 05/12/17 Втр 06:56:43  166340184
>>166340055
Кароч. Напиши класс строки Row, в котором будет список элементов матрицы. Напиши статический метод преобразования двухмерного массива в одномерный массив (список) строк. В классе Row создай метод получения крайнего элемента (тот, по значению которого нужно сортировать). И в классе же Row статичный метод преобразования массива (списка) Row в интовый массив.
Таким образом ты разделишь свою задачу на меньшие подзадачи и упростишь себе жизнь.
Аноним 05/12/17 Втр 06:57:34  166340212
>>166340101
>>166340113
Ну серьезно. Покажите как надо. Я не вывожу после суток без сна. Блять. Я хуй знает. Отсортировать только последний столбик получается. Но чтобы переставить строку надо там в цикле указать столбец. А стоит вставить цикл и все идет по пизде и больше не работает. Я уже везде куда только можно притулил этот цикл для столбца и нихуя не вышло.
Аноним 05/12/17 Втр 06:59:07  166340259
>>166340179
Это понятно, но не работает. Отсортировать только последний столбик получается. Но чтобы переставить строку надо там в цикле указать столбец. А стоит вставить цикл и все идет по пизде и больше не работает. Я уже везде куда только можно притулил этот цикл для столбца и нихуя не вышло.

for (int i = 0; i < n; i++)
{
for (int j = 0; j < n - 1; j++)
{
if (arr2[j + 1, n] < arr2[j, n])
{
int t = arr2[j, n];
arr2[j, n] = arr2[j + 1, n];
arr2[j + 1, n] = t;
}
}
}

n - это как раз номер столбца. ЧТобы строку переставить надо вместо n цикл с перемнной. Но стоит этот еще один цикл воткнуть куда-то и все накрывается.
Не мог бы ты исправить и показать как надо?
Аноним 05/12/17 Втр 06:59:13  166340262
>>166340212
Это C#, епты бля. Юзай ООП. Я бы показал как, но ближайшая студия на работе.
>>166340184-кун
Аноним 05/12/17 Втр 07:00:25  166340287
>>166340212
1) пиши отдельно метод для перестановки двух столбцов в матрице
2) вставляй в if
3)... компелируй
4)PROFIT
Аноним 05/12/17 Втр 07:00:48  166340296
>>166340184
Ну пиздец. Я думал как-то проще делается. Вот ведь уже отсортирован столбец, осталось только строки поменять местами вместе с ним.
Аноним 05/12/17 Втр 07:02:12  166340324
>>166340287
>Перестановки строк
*быстрофикс
Аноним 05/12/17 Втр 07:02:45  166340333
>>166340262
>Юзай ООП.
Ты в курсе, что ООП нужно для упрощения разработки больших приложений? И использовать его для приложения ОПа на 50 строчек - это долбоебизм?
Аноним 05/12/17 Втр 07:02:54  166340338
>>166340296
Твоя задача не столбца отдельно сортировать, а стоки.
1) Делим матрицу на строки
2) сортируем как нужно
3) собираем строки обратно в матрицу

Тебе просто надо написать методы (и 1 класс), каждый из которых занимается одним своим делом.
Аноним 05/12/17 Втр 07:03:39  166340351
>>166340333
>для упрощения разработки больших приложений
Кто сказал? Запрети мне юзать ооп везде, где я хочу.
Аноним 05/12/17 Втр 07:04:26  166340373
>>166340351
Запретил тебе за щеку
Аноним 05/12/17 Втр 07:05:48  166340411
>>166339586 (OP)
Сдохни мразь тупая гнида малолетняя.
Нахуй ты суда лезишь она тебя сожрет.
Иди на манагера
Аноним 05/12/17 Втр 07:05:57  166340417
>>166340259
Ты не совсем так сортировку делаешь: один цикл(i) от 0 до n, а внутри него еще один (j) - от следующего элемента (i+1) до n. Внутри этого цикла сравниваешь числа. Если, например, число по индексу j меньше, то меняешь местами строки. Меняешь по тому же принципу, что и в методе сортировки пузырьком, только менять надо не 2 числа местами, а 2n чисел.
Аноним 05/12/17 Втр 07:06:17  166340424
>>166340338
>1) Делим матрицу на строки
>2) сортируем как нужно
И как я это сделаю? Если у меня сейчас не выходит, то как должно получится, если я это решение вынесу в отдельный класс? По волшебству что ли?
Аноним 05/12/17 Втр 07:06:52  166340434
>>166339586 (OP)
миллион способов решить это говно ебать ты тупой
Аноним 05/12/17 Втр 07:07:36  166340452
>>166340417
>то меняешь местами строки.
В том и суть, что я не могу строки поменять. Не знаю как. Не мог бы ты показать?
Аноним 05/12/17 Втр 07:08:45  166340481
>>166339586 (OP)
У тебя есть датагрид.роу, в кажой роу есть последняя ячейка, по ней сравнивай, и сортируй строки методом пузырька, например. Либо учи запросы linq, там в один запрос отсортируешь по нужному параметру.
Аноним 05/12/17 Втр 07:11:21  166340535
>>166340452
Берешь числа из одного массива и перекладываешь в другой. На крестах можно было бы через массива указателей на массив сделать проще, но в шарпе только через цикл
Аноним 05/12/17 Втр 07:11:42  166340548
>>166340417
Сделал по твоему и не работает даже сортировка в последнем столбце.
Аноним 05/12/17 Втр 07:11:50  166340553
>>166340452
Только если на словах пояснить могу сейчас. Принцип такой: врубаем цикл по строке (k) и цикл по другой строке (l). t = a[k]; a[k] = a[l]. Ну и так со всеми элементами
Аноним 05/12/17 Втр 07:12:02  166340558
4454545.png (38Кб, 1212x514)
>>166340548
Аноним 05/12/17 Втр 07:13:56  166340602
нахуя тупому далбоебу помогаете?
Аноним 05/12/17 Втр 07:14:59  166340627
>>166340424
Пишешь статический метод
public static List<Row> getRows(int[][] matrix);
Метод вернет список строк.
Дальше пишешь метод сортировки строк
public static void sortRows(List<Row> rows);
Этот метод отсортирует строки.
Потом пишешь метод
public static int[][] buildMatrix(List<Row> rows);
Метод соберет список строк в интовую матрицу.

Реализации этих методов сам напишешь?
Аноним 05/12/17 Втр 07:16:11  166340655
>>166340602
Я мозги разминаю перед работой.
Аноним 05/12/17 Втр 07:16:31  166340666
>>166340627
Нахуя вы так изъебываетесь, может еще синглтон класс ему написать, чтобы решалось лучше?
Аноним 05/12/17 Втр 07:17:05  166340674
>>166340666
Сотона, нахуя ему синглтон тут?
Аноним 05/12/17 Втр 07:17:53  166340690
>>166340674
А нахуя ему 3 статик метода, для задачи в 15 строк?
Аноним 05/12/17 Втр 07:18:45  166340710
>>166339735
Похоже на симплекс метод.
Аноним 05/12/17 Втр 07:19:07  166340721
>>166340655
раб ебучий !
Аноним 05/12/17 Втр 07:19:45  166340736
>>166340690
Затем ему 3 метода, что они будут каждый в 3 строки. Каждый делает свое дело. Не будет неебической лесенки из 15 циклов, в которых заблудиться проще, чем лабиринтах Минотавра.
Аноним 05/12/17 Втр 07:20:05  166340747
>>166340627
>Дальше пишешь метод сортировки строк
>public static void sortRows(List<Row> rows);
>Этот метод отсортирует строки.
Это там надо будет указывать метку сортировки и прочее. Это я не изучал и это сложно.
Аноним 05/12/17 Втр 07:20:48  166340772
>>166340655
у тебя есть мозг если ты таким тупым говном разминаешь
Аноним 05/12/17 Втр 07:21:17  166340787
>>166340747
Какую метку сортировки?
Аноним 05/12/17 Втр 07:21:36  166340799
>>166340736
>то они будут каждый в 3 строки.
Напиши метод сортировки строк, например. Там охуеешь сколько строк.
Аноним 05/12/17 Втр 07:22:04  166340812
>>166340772
Я люблю порой вернуться в прошлое и вспомнить как сам мучился над простыми задачками.
Аноним 05/12/17 Втр 07:22:36  166340821
>>166340787
А как ты будешь строки сортировать? По какому признаку?
Аноним 05/12/17 Втр 07:22:44  166340826
E
Аноним 05/12/17 Втр 07:28:04  166340953
>>166340627
хуете какая-то
Аноним 05/12/17 Втр 07:30:49  166341031
>>166339586 (OP)
Нахуй иди
Аноним 05/12/17 Втр 07:31:17  166341043
>>166340821
Я бы этот признак вытащил в метод int evaluate() класса Row. А внутри него указал бы свойство/формулу/аллаха, значение которого надо проверять.
Сортировка выглядела бы так:
public static void sortRows(List<Row> rows) {
for (int i = 0; i < rows.size; i++) {
for (int k = i; k < rows.size; k++) {
if (rows.get(i).evaluate > rows.get(k).evaluate) {
Row row1 = rows.get(i);
Row row2 = rows.get(k);
rows.get(i) = row2;
rows.get(k) = row1;
}
}
}
Аноним 05/12/17 Втр 07:37:11  166341181
>>166341043
>А внутри него указал бы свойство/формулу
Какую?
Аноним 05/12/17 Втр 07:39:38  166341248
>>166341181
Конкретно в твоей задаче, это крайний правый элемент. Значит, у тебя
public int evaluate() {
return this.get(this.size - 1);
}
Аноним 05/12/17 Втр 07:41:13  166341289
Не ведитесь на зеленого, это уже второй тредж за сегодня.
Если это и не тролль, то явно умственно отсталый, ему в прошлом треде кучу решений сбросили.
Аноним 05/12/17 Втр 09:13:32  166344038
Ну що, оп, решил свою хуиту?
Аноним 05/12/17 Втр 09:59:48  166345646
>>166344038
Нет. Все только советы раздают. Которые нихуя не помогают.
Аноним 05/12/17 Втр 10:04:56  166345842
>>166345646
Ты пробовал методы и классы нахуярить?
Аноним 05/12/17 Втр 10:14:01  166346234
Ладно, не хочешь 3 метода - напиши один.
public void swapRows(int[][] matrix, int row1, int row2);

Метод получает матрицу и два индекса строк. Все, что он делает, это идет по этим строкам и меняет элементы местами.

Дальше этот метод вызываешь, когда надо строки свопнуть.

Зачем метод? Затем, что 18 вложенных циклов нихуя не внесут ясности в твой код, а разделение задачи на подзадачи приведет к упрощению понимания.
Аноним 05/12/17 Втр 10:23:50  166346638
>>166345842
Зачем? Классы и методы только все усложняют в таком простом задании.
Аноним 05/12/17 Втр 10:24:59  166346684
>>166346234
Откуда он индексы строк возьмёт?
Аноним 05/12/17 Втр 10:29:04  166346845
>>166346684
Смари. Идешь такой по матрице, по последнему столбцу. А как ты идешь? А вот так: matrix[last_col][j]. last_col в данном случае, это индекс столбца, j - индекс строки.
Ну вот идешь ты, такой, весь вдоль чиго бано, ну и сравниваешь значения элементов. И тут хуяк! И не по порядку элементы! А ты такой хуяк и вызываешь метод swapRows. И строки известны, и матрица, и Аллах с тобой.
Заебца?
Аноним 05/12/17 Втр 10:30:04  166346894
Оп, тут тебе никто готовый код не даст, думай по советам, упрощай, юзай Math.Max() вместо ручного сравнения.
А не дадут кода потому, что если ты с этим не справишься - дальше будет только хуже.
Аноним 05/12/17 Втр 13:30:46  166354963
>>166346894
а мне бы готовый, чтобы на примере обучиться.
Аноним 05/12/17 Втр 13:39:57  166355371
>>166354963
А жаренных гвоздей не хочешь?
за косарь напишу
Аноним 05/12/17 Втр 13:44:04  166355553
>>166339586 (OP)
Решил твою хуйню на sql

select * from matrix order by lastRow
Аноним 05/12/17 Втр 13:44:52  166355584
>>166355553
>lastRow
lastColumn конечно же
Аноним 05/12/17 Втр 13:50:11  166355810
>>166339633
Всегда есть свободная касса.
Аноним 05/12/17 Втр 13:56:49  166356095
>>166339586 (OP)
Ну в сортировке, что ты высрал тебе не элементы столбца надо менять местами, а строки матрицы как тебе уже пояснили. классы, методы , ору с индусов, им гвоздь надо забить, они берут кувалду
Аноним 05/12/17 Втр 13:57:35  166356131
>>166339586 (OP)
Держи на питоне

print(sorted(matrix, key=lambda x: x[-1]))
Аноним 05/12/17 Втр 14:00:09  166356276
>>166356095
>а строки матрицы как тебе уже пояснили
Я и сам знаю, что строки надо. Я не знаю как мне это сделать.

Аноним 05/12/17 Втр 14:00:43  166356310
>>166340333
>50 строчек
>сортировка массива
Чёта проиграл
Аноним 05/12/17 Втр 14:05:04  166356527
1512471875928.jpeg (34Кб, 198x199)
>>166356276
Братишка, ты не можешь две соседних строки свапнуть одним циклом?
Аноним 05/12/17 Втр 14:09:07  166356716
>>166339586 (OP)
Ты сначала мысли и цель формулировать научись нормально, а потом пиши.
Аноним 05/12/17 Втр 14:18:21  166357174
>>166356527
Так мне не просто две строки свапнуть, мне надо отсортировать все строки так, чтобы в последнем столбике числа оказались по возрастанию.
Аноним 05/12/17 Втр 14:54:19  166359063
дайте пожлста готовое решение
Аноним 05/12/17 Втр 16:14:35  166364084
,f

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 83 | 4 | 26
Назад Вверх Каталог Обновить

Топ тредов
Избранное