198 / 10 / 3
Регистрация: 30.04.2016
Сообщений: 732

Упорядочить строки по возрастанию элементов главной диагонали

30.09.2017, 10:39. Показов 1019. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
. В массивe R(5, 5) упорядочить строки по возрастанию
элементов главной диагонали.
QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
11
12
13
CLS
DIM X(5, 5)
FOR i = 1 TO 5
FOR j = 1 TO 5
  IF i = j  THEN
X(i, j) = INT(20 * RND(i))
   END IF
   LOCATE I * 2, j * 43
   PRINT X(i, j);
     S = S + X(i, j)
NEXT j, i
     PRINT
PRINT “ Сумма эл-тов массива: “ ;  S
На выходе имеем:
QBasic/QuickBASIC
1
2
3
4
5
6
14   0    0   0   0
0    10   0   0   0
0     0   11  0   0
0     0    0   5   0
0     0    0   0   6
Сумма эл-ов массива:  46
На выходе, я думаю, должно быть так:
QBasic/QuickBASIC
1
2
3
4
5
14   0   0   0   0
 0   11  0   0   0
 0    0  10  0   0
 0    0   0   6   0
 0    0   0   0   5
А как это сделать Предполагаю, что можно применить сортировку массива. Но для двухмерного массива – вопрос-
делается ли она или нет. В книге Тимофеевской об этом ни звука.
Вы могли бы раскрыть эту тему? Ну и сделать приведённую программу. .
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.09.2017, 10:39
Ответы с готовыми решениями:

Упорядочить строки по возрастанию элементов главной диагонали
В массивe R(5, 5) упорядочить строки по возрастанию элементов главной диагонали. CLS DIM X(5, 5) FOR i = 1 TO 5 FOR j = 1 TO 5 ...

Упорядочить строки по возрастанию элементов главной диагонали
. В массивe R(5, 5) упорядочить строки по возрастанию элементов главной диагонали. CLS DIM X(5, 5) FOR i = 1 TO 5 FOR j = 1 TO 5 ...

Упорядочить строки матрицы по убыванию элементов главной диагонали
В массивe R(5, 5) упорядочить строки по убыванию элементов главной диагонали. (уточнять условие не к чему: задача взята из Интернета....

4
27 / 32 / 14
Регистрация: 08.09.2017
Сообщений: 448
30.09.2017, 12:05
В чем проблема?
Отсортируйте строки. А элементом сравнения
будут элементы главной диагонали.
0
7 / 7 / 8
Регистрация: 06.03.2016
Сообщений: 19
06.10.2017, 17:45
Если можно проще, буду рад увидеть.
QBasic/QuickBASIC
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
DEFINT A-Z
OPTION BASE 1
CLS
RANDOMIZE TIMER
 
'zapolnenie iznahalnogo massiva
DIM a(5, 5)
COLOR 15: PRINT "Bilo:"
FOR i = 1 TO 5
FOR j = 1 TO 5
    a(i, j) = INT(RND * 100)
    IF i = j THEN COLOR 2 ELSE COLOR 7
    PRINT a(i, j),
NEXT j
NEXT i
 
'vipiska glavnoy diagonali & nahojdenie maksimalnogo elementa
DIM b(5, 5)
max = a(1, 1)
FOR i = 1 TO 5
b(5, i) = a(i, i)
IF max < a(i, i) THEN max = a(i, i)
NEXT i
 
'sozdanie massiva s sortirovanimi strokami
COLOR 15: PRINT "Stalo:"
i = 1
WHILE i <= 5
    'nahojdenie nomera stroki s minimalnim elementom diagonali
    x = 1
    FOR j = 2 TO 5
        IF b(5, x) > b(5, j) THEN x = j
    NEXT j
 
    'zapis stroki s minimalnim na danniy moment elementom
    FOR j = 1 TO 5
        b(i, j) = a(x, j)
        IF j = x THEN COLOR 2 ELSE COLOR 7
        PRINT b(i, j),
    NEXT j
    'minimalniy element delaem bolshe maksimalnogo
    IF i < 5 THEN b(5, x) = max + 1
    i = i + 1
WEND
COLOR 7
0
27 / 32 / 14
Регистрация: 08.09.2017
Сообщений: 448
07.10.2017, 12:12
QBasic/QuickBASIC
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
CLS
RANDOMIZE TIMER
 
DIM x(5, 5) ' исходный массив
DIM d(5)     ' массив диагонали
 
FOR i = 1 TO 5  ' заполнение массивов
FOR j = 1 TO 5
   x(i, j) = INT(90 * RND)
   IF i = j THEN d(i) = x(i, i)
   PRINT USING "####"; x(i, j);
NEXT: PRINT
NEXT: PRINT
 
FOR i = 1 TO 5  ' преобразование массива
FOR j = i + 1 TO 4
   IF d(i) > d(j) THEN
      FOR k = 1 TO 5
         SWAP x(i, k), x(j, k)
      NEXT k
   END IF
NEXT j, i
 
FOR i = 1 TO 5  ' вывод результата
FOR j = 1 TO 5
   PRINT USING "####"; x(i, j);
NEXT: PRINT
NEXT
0
7 / 7 / 8
Регистрация: 06.03.2016
Сообщений: 19
21.10.2017, 16:24
Исправил ошибки.
QBasic/QuickBASIC
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
CLS
RANDOMIZE TIMER
DIM x(5, 5), d(5)
 
FOR i = 1 TO 5
FOR j = 1 TO 5
    x(i, j) = INT(90 * RND)
    IF i = j THEN d(i) = x(i, j)
    PRINT USING "####"; x(i, j);
NEXT: PRINT
NEXT: PRINT
 
FOR i = 1 TO 4
FOR j = i + 1 TO 5
    IF d(i) > d(j) THEN
        FOR k = 1 TO 5
            SWAP x(i, k), x(j, k)
        NEXT k
        SWAP d(i), d(j)
    END IF
NEXT j, i
 
FOR i = 1 TO 5
FOR j = 1 TO 5
    PRINT USING "####"; x(i, j);
NEXT: PRINT
NEXT
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.10.2017, 16:24
Помогаю со студенческими работами здесь

Первую половину элементов главной диагонали квадратной матрицы по возрастанию, вторую по убыванию
Нужно первую половину элементов главной диагонали квадратной матрицы по возрастанию, вторую по убыванию. Помогите бедному студенту ...

Упорядочить ее строки по возрастанию их наибольших элементов
Дана матрица целых чисел X(n, т). Упорядочить ее строки по возрастанию их наибольших элементов. Вывести исходную и полученную матрицы....

Упорядочить строки матрицы по возрастанию сумм их элементов
Ребят, сижу над задачей уже 2 часа. Задача полностью: Дана матрица целых чисел X(n,m). Упорядочить ее строки по возрастанию сумм их...

Упорядочить строки матрицы по возрастанию сумм их элементов
Дана матрица целых чисел x(n,m). Упорядочить ее строки по возрастанию сумм их элементов. Вывести исходную и полученную матрицу. Значения...

Упорядочить строки матрицы по возрастанию их наибольших элементов
Как я понимаю надо найти максимальный элемент каждой строки, сравнить их каким-то макаром между собой и затем проранжировать строки по...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: показать затраченные материалы за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В качестве. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru