![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Помогите сформировать из двухмерного массива !!!
Одномерноый массив из максимальных элементов столбцов и одномерный массив из сумм элементов строк |
|
#2
|
|||
|
|||
|
Цитата:
![]() |
|
#3
|
||||
|
||||
|
Здесь помогают не готовым кодом, а вам найти ошибку в своем. За халявой в работу велком.
А если хотите сами сделать, то вот вам примерный алгоритм: 1. Создаете одномерный массив размерностью в количество столбцов. 2. Пробегаетесь в цикле по всем столбцам вашего двумерного массива и записываете найденное максимальное значение в новый одномерный массив для каждого столбца. Выводите на печать результат если необходимо. Вторая задача почти идентична первой, но не ищете максимум, а просто накапливаете сумму в новый одномерный массив для каждой строки. |
|
#4
|
|||
|
|||
|
Код:
type
massiv = array of array of integer;
function matrix(a,b:integer; ar:massiv):integer;stdcall;external 'mas.dll';
function max(a,b:integer; ar:massiv):integer;stdcall;external 'mas.dll';
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
for i:=0 to 3 do
for j:=0 to 3 do
sg1.Cells[i,j]:= inttostr(random(100)-50);
end;;Последний раз редактировалось Andruxa, 07.06.2012 в 23:31. |
|
#5
|
|||
|
|||
|
Цитата:
Я здесь вижу что объявляется двумерный массив с именем "massiv", но заполняется чтото с именем "sg1" - включая свои экстрасенсорные способности предполагаю что это TStringGrid ? Задача всё ещё непонятна... В двумерном массиве "massiv" нужно найти максимальные элементы? Тогда почему он нигде не заполняется? В таком виде как сейчас его размер 0х0 (ноль на ноль), то есть искать нечего. Или же вам нужно найти максимальные элементы в некоем "sg1"? Но в таком случае это никакой не двумерный массив - у массивов никаких "Cells" не бывает. И какое отношение к задаче имеют эти функции "matrix" и "max" которые импортируются из какой-то загадочной "mas.dll"? |
|
#6
|
|||
|
|||
|
Цитата:
|
|
#7
|
|||
|
|||
|
вот программа! но там Подпрограммы обработки двухмерного массива: поиск минимума (максимума), перестановка столбцов (строк) с заданными номерами!!!
а мне нада... Подпрограммы обработки двухмерного массива: формирование одномерного массива из максимальных элементов столбцов, формирование одномерного массива из сумм элементов строк |
|
#8
|
||||
|
||||
|
Никак чужой вариант лабораторной?
![]() Страдалецъ уже написал и весь алгоритм: Цитата:
Цитата:
Тут не богадельня, а место получения знаний. |
|
#9
|
|||
|
|||
|
одномерный массив создавать в БИБЛИОТЕКИ ?
|
|
#10
|
||||
|
||||
|
Можно и в библиотеке, можно и в главной программе. Не важно.
DLL загружается в то же адресное пространство, что и сама программа, следовательно, динамически созданный массив будет доступен обоим. Одно НО: нельзя создавать фиксированный массив как локальную переменную в функции библиотеки, т.к. вернуть его в вызвавшую программу не получится. |