Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 24.11.2014
Сообщений: 50

Отсортировать двумерный массив

05.05.2015, 21:20. Показов 1442. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Преобразовать массив таким образом, чтобы сначала располагались все отрицательные элементы, а потом - все положительные (элементы, равные нулю, считать положительными).

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
For i = 1 To n  
        For j = 1 To m - 1
               For k = 1 To m - 1
                               If a(i, k) >= 0 Then
                                    tmp = a(i, k)
                                    a(i, k) = a(i, k + 1)
                                    a(i, k + 1) = tmp
                               End If
                    Next k
           Next j 
    Next i
Суть в том, что моя программа сортирует по строчкам, т.е. поработала с первой строчкой и забыла ее.
Помогите пожалуйста так чтобы программа работала со всем массивом.

Добавлено через 4 часа 20 минут
Или я задание не правильно понял? У меня получается в каждой строке слева находятся отриц. элементы, а справа положит. + 0
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.05.2015, 21:20
Ответы с готовыми решениями:

Массив: Отсортировать двумерный массив по строкам и столбцам
Помогите! Дали задачу по программированию на бейсике, но у меня как-то с этим не заладилось.Задача такая - Отсортировать двумерный массив...

Отсортировать двумерный массив
В двумерном массиве из положительных и отрицательных чисел записать числа главной диагонали в обратную сторону.

Массив: преобразорвать двумерный массив в одномерный и отсортировать его методом пузырька
всем привет. народ помогите с прогой, конкретно с функцией sort (65 строка), она должна двухмерный массив перевести построчно в одномерный...

5
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
05.05.2015, 21:27
В задании вообще не понятно о каком массиве речь. Одномерный? Тогда откуда строчки
0
0 / 0 / 0
Регистрация: 24.11.2014
Сообщений: 50
05.05.2015, 21:37  [ТС]
Маленьким шрифтом написано с верху: Сегодня, 21:20 Отсортировать двумерный массив
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
05.05.2015, 22:31
Лучший ответ Сообщение было отмечено Ilshat8 как решение

Решение

Так может в одномерный сначала преобразовать?
Visual Basic
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
43
44
45
46
47
48
49
50
Private Sub Комманда1_Click()
Dim i, j, n, m
Dim a(), B(), k, tmp
 
n = 5
m = 6
ReDim a(1 To n, 1 To m)
ReDim B(1 To UBound(a) * UBound(a, 2))
 
Randomize
Cls
For i = 1 To 5
        For j = 1 To 6
                a(i, j) = Int(20 * Rnd - 10)
                Print a(i, j),
        Next j
        Print
Next i
 
k = 0
For i = 1 To 5
        For j = 1 To 6
            k = k + 1
            B(k) = a(i, j)
        Next j
Next i
 
 
For i = 1 To k - 1
       For j = i To k - 1
                       If B(j) >= 0 Then
                            tmp = B(j)
                            B(j) = B(j + 1)
                            B(j + 1) = tmp
                       End If
            Next j
   Next i
   
  Print
  Print
k = 0
For i = 1 To 5
        For j = 1 To 6
            k = k + 1
            a(i, j) = B(k)
              Print a(i, j),
        Next j
         Print
Next i
End Sub
1
0 / 0 / 0
Регистрация: 24.11.2014
Сообщений: 50
06.05.2015, 22:47  [ТС]
Alex77755, Спасибо, очень помогли. (Только я взял не j = i To k - 1, а j = 1 To k - 1)
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
07.05.2015, 01:46
Можно обращаться с двумерным массивом как с одномерным, преобразуя один индекс в два "на лету".
Вот так например можно записать в каждый элемент двумерного массива его "одномерный" индекс:
Visual Basic
1
2
3
4
5
6
7
8
Sub bb()
Const N& = 3, M& = 4  'число строк и столбцов массива
Dim a(N - 1, M - 1), i&
For i = 0 To N * M - 1
  a(i Mod N, i \ N) = i
Next
Stop    'рассмотрите массив а в окне Locals
End Sub
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.05.2015, 01:46
Помогаю со студенческими работами здесь

Создать двумерный массив из произвольных чисел, и отсортировать массив по убыванию
необходимо создать двумерный массив из произвольных чисел, и отсортировать массив по убыванию.

Дан двумерный массив a (m, n) отсортировать строки матрицы по возрастанию (массив вводить самой)
дан двумерный массив a ( m, n ) отсортировать строки матрицы по возрастанию ( массив вводить самой )

Отсортировать двумерный массив
Надо преобразовать в код с консоли на Windows Form. В низу код для консоли. Проблема заключается в том, что оно не правильно сортирует. ...

Отсортировать двумерный массив
Нужен код, упорядочивающий все элементы двумерного массива по убыванию методом Шелла.

Отсортировать двумерный массив
В файле содержится двумерный массив размерностью n × n. В новый файл вывести отсортированный массив. Каждый третий столбец по...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru