| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Asm: Общие вопросы > Просьба о помощи, программы с масивами |
| Автор: Razmus 27.12.2007, 02:52 | ||||
| Уважаемые посетители форума!!! У меня просьба ко всем, я на асемблере пишу плохо(а точьнее почьти никак), помогите написать порограмки. Очень прошу! Определяет сумму негативных элементов с парными индексами в пределах каждой строки и столбика Получилось написать для позитивных элементов с парными индексами, но правда в одномерном масиве с двухмерными у меня проблема
Поиск в ряде самого длинного предложения эта программа для подсчета количества слов может ее можно както модифицировать.
Определяет среднее арифметическое негативных элементов массива тут совсем темный лес так как нада двухмерный массив. Заранее спасибо!!! |
| Автор: SABROG 27.12.2007, 13:48 | ||||
| Давай http://acm.dvpion.ru/article.asp?id_text=520 что такое двумерные массивы и перекладывать это на память компьютера, которую можно изобразить в виде ленты с ячейками размером в байт. Вот одномерный массив на ленте памяти с 5 элементами, где n находится по одной координате X равной 3 (если считать с нуля то на второй): 1, 2, n, 4, 5 Вот двумерный массив, где появилась координата Y, таким образом X=3, Y=2: 12345 23n56 Наша задача преобразовать координаты X, Y в одну цифру-смещение от нуля, т.к. мы знаем, что память - лента. На ленте памяти этот массив выглядит так: 1234523n56. Что нам известно: размерность массива=2 (двухмерный), количество элементов на каждый из двух массивов=5, размер каждого элемента=1 (байт) Нам надо найти смещение элемента n от начала массива зная его координаты: X=3 Y=2 ( Y по сути говорит нам о том в каком из массивов находится цифра ) Решение: (X*размер одного элемента массива (скажем 1 байт))*Y (3*1)*2=6 (это смещение от нуля, по сути 7ой байт/элемент на ленте памяти) В итоге, чтобы создать двумерный массив нам надо выделить памяти по следующей формуле: n-мерность * количество элементов в каждом из массивов. Таким образом запись:
превращается в
Меняется лишь логика работы с таким массивом, надо будет ввести константы, которые скажут нам о размерности массива y, о количестве элементов в каждом из массивов и размер элементов. |