Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 21.11.2009
Сообщений: 15
1

Найти максимальный элемент на главной диагонали матрицы и заменить его на 1

21.11.2009, 14:48. Показов 1522. Ответов 5
Метки нет (Все метки)

Дан массив элементов 6х6. Найти максимальный элемент на главной диагонали и заменить его на 1
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.11.2009, 14:48
Ответы с готовыми решениями:

Найти значение наибольшего по модулю элемента и заменить его на сумму элементов главной диагонали матрицы
Задана матрица A размером n x n .Найти значение наибольшего по модулю элемента и заменить его на...

Определить и вывести, находится ли максимальный элемент матрицы на главной диагонали или нет
Ввести размеры ( n, m ) двумерного массива типа int. Сгенерировать или ввести матрицу n*m. ...

На главной и побочной диагоналях матрицы найти наибольший элемент, обменять его с элементом на пересечении диагоналей
Дана целочисленная квадратная матрица порядка N (N — нечётное), все элементы которой различны....

Заменить элементы главной диагонали матрицы нулями и найти максимальный элемент ниже побочной диагонали
Есть пример для решения другой задачи(она находит суму всех элементов каждой строки и выводит...

5
64 / 63 / 3
Регистрация: 16.11.2009
Сообщений: 156
22.11.2009, 01:17 2
32 битный вариант.
Assembler
1
2
3
4
5
6
7
8
9
10
                mov     ecx,35d                 ;порядковый номер последнего элемента массива 6х6
                xor     eax,eax                 ;максимальный элемент
@1:             lea     esi,[a+ecx*2]           ;а - массив word чисел
                cmp     ax,[esi]                ;если проверяемый элемент массива меньше ax
                ja      @2                      ;перескакиваем
                mov     ax,[esi]                ;иначе пишем в ax элемент массива
                mov     ebx,esi                 ;в ebx адрес
@2:             sub     ecx,7d                  ;если еще не перебрали все элементы главной диагонали с конца
                jae     @1                      ;повторяем со следующим числом
                mov     word [ebx],1            ;иначе пишем в 1 в адрес указаный в ebx (максимальный элемент)
0
0 / 0 / 0
Регистрация: 21.11.2009
Сообщений: 15
24.11.2009, 19:59  [ТС] 3
Цитата Сообщение от Orwomoi Посмотреть сообщение
32 битный вариант.
Assembler
1
2
3
4
5
6
7
8
9
10
                mov     ecx,35d                 ;порядковый номер последнего элемента массива 6х6
                xor     eax,eax                 ;максимальный элемент
@1:             lea     esi,[a+ecx*2]           ;а - массив word чисел
                cmp     ax,[esi]                ;если проверяемый элемент массива меньше ax
                ja      @2                      ;перескакиваем
                mov     ax,[esi]                ;иначе пишем в ax элемент массива
                mov     ebx,esi                 ;в ebx адрес
@2:             sub     ecx,7d                  ;если еще не перебрали все элементы главной диагонали с конца
                jae     @1                      ;повторяем со следующим числом
                mov     word [ebx],1            ;иначе пишем в 1 в адрес указаный в ebx (максимальный элемент)
СПАСИБ...!тока я не понимаю почему она не работает ...её вообще в тасме запускать или где то в другом месте???и если мона напиши плиииз начало и конец!
0
64 / 63 / 3
Регистрация: 16.11.2009
Сообщений: 156
25.11.2009, 02:04 4
Я запускал в fasm. Не знаю, что tasm тут не понимает... Возможно 3 строка в tasm'e по другому пишется? Или в 10 надо word ptr [ebx]? Начало и конец могу для фасма написать:
Assembler
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
format  PE GUI 4.0
entry start
 
include 'win32a.inc'
                    
section '.text' code readable executable
 
start:
                mov     ecx,35d                 
                xor     eax,eax                 
@1:             lea     esi,[a+ecx*2]          
                cmp     ax,[esi]               
                ja      @2                     
                mov     ax,[esi]             
                mov     ebx,esi                 
@2:             sub     ecx,7d                  
                jae     @1                    
                mov     word [ebx],1 
 
                invoke    ExitProcess,0
 
                
 
section '.data' data readable writeable
 
a       dw 2341d,1345d,2033d,3543d,7843d,4234d
        dw 3249d,7643d,9038d,2086d,2375d,5083d
        dw 7970d,5308d,2984d,0985d,7893d,0054d
        dw 0435d,3457d,2384d,9712d,6843d,5431d
        dw 8413d,6461d,6548d,1304d,8909d,6484d
        dw 6819d,9818d,3548d,1981d,8984d,8413d
 
 
section '.idata' import data readable writeable
library kernel,'KERNEL32.DLL'
import kernel,\
       ExitProcess,'ExitProcess'
9712d меняется на 1
0
2531 / 827 / 10
Регистрация: 31.05.2009
Сообщений: 1,669
25.11.2009, 02:48 5
Боюсь, что SNIX хочет вариант для доса.
0
64 / 63 / 3
Регистрация: 16.11.2009
Сообщений: 156
25.11.2009, 02:58 6
Не... Дос это не ко мне. Но можно воспользоваться алгоритмом и перевести в дос.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.11.2009, 02:58

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Найти максимальный элемент главной диагонали матрицы А(20*20) и поменять его местами с А[1,1]
Еще раз прошу помощи) Найти максимальный элемент главной диагонали матрицы А(20*20) и поменять...

Найти максимальный диагональный элемент и указать его координаты в главной диагонали матрицы
1)Найти максимальный диагональный элемент и указать его координаты в главной диагонали матрицы.

Заменить элементы главной диагонали матрицы на максимальный элемент побочной диагонали на минимальный элемент
в квадратной матрице находящейся в файле найти максимальный и минимальный элементы и заменить...

Найти максимальный элемент и его индексы среди значений, лежащих на главной диагонали матрицы
1.Даны натуральное число n и квадратная матрица порядка n целочисленных элементов, где n≤12....


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.