Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 06.04.2009, 16:29   #11
Bayazet
Форумчанин
 
Регистрация: 08.12.2008
Сообщений: 156
По умолчанию

Цитата:
Как вариант, можно посылать процедуре размер
не понял, можете пояснить?
Bayazet вне форума
Старый 06.04.2009, 16:34   #12
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Имею в виду что-то вроде:
Код:
procedure FlipArrayVertical(a : mas; m,n : integer);
где mas - динамический массив, а m,n - размеры

Это как альтернатива хранению его в нулевом элементе.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 22.09.2010, 16:02   #13
Lelik_cool
 
Регистрация: 08.09.2010
Сообщений: 4
По умолчанию

Товарищи! по ходу дела возник вопрос: возможно ли объявление такого типа:

type
Tmas = Array [1..10000,1..4] of real;
Var
OptL, OptW, OptH : Tmas;

или частности в этом деле невозможны и надо было динамическую структуру объявлять?
Lelik_cool вне форума
Старый 22.09.2010, 16:03   #14
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

а попробывать религия запрещает?(фраза сперта)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума
Старый 22.09.2010, 16:10   #15
Lelik_cool
 
Регистрация: 08.09.2010
Сообщений: 4
По умолчанию

в том то и дело, что поробовал... после этого процедура сортировки массива гоняет что угодно, но только не его. после прогона ничего не меняется. думаю, проблема в этом, ибо все остальные аргументы процедуры верны- проверял... если меня поправят, буду счастлив.
а, если щас объявлять динамическую структуру, надо будет около 600 строк переписывать... поэтому решил сначала посоветоваться.
процедура такого плана:

procedure NameProc(u: Tmas; h: integer; k: integer)
h- число начальных строк, которые нужно подвергнуть сортировке,
k- столбец, по которому сортировать надо

Последний раз редактировалось Lelik_cool; 22.09.2010 в 16:14.
Lelik_cool вне форума
Старый 22.09.2010, 16:15   #16
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

если ничего не меняется, и при этом все компилится без ошибок, значит косяк в коде.
(еслиб нельзя было выделитьб память был б ошибка)

в вашем коде передается копия массива в процедуру, поставьте перед именем массива(в параметре) var, то есть передавайте по ссылке.
(учите основы)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.

Последний раз редактировалось Пепел Феникса; 22.09.2010 в 16:19.
Пепел Феникса вне форума
Старый 22.09.2010, 16:21   #17
Lelik_cool
 
Регистрация: 08.09.2010
Сообщений: 4
По умолчанию

Дружище, понимаю, что пузырь- извращение, но все же можешь глянуть? я просто не вижу ошибку:

type
Tmas = Array [1..10000,1..4] of real;
Var
OptL, OptW, OptH : Tmas;

Procedure Bubble(u: Tmas; h: integer; k: integer);
Var
m, n : integer;
x : real;
begin
for n := 2 to h do
begin
for m := h-1 downto n do
begin
if u[m-1,k] < u[m,k] then
begin
x := u[m-1,1];
u[m-1,1] := u[m,1];
u[m,1] := x;

x := u[m-1,2];
u[m-1,2] := u[m,2];
u[m,2] := x;

x := u[m-1,3];
u[m-1,3] := u[m,3];
u[m,3] := x;

x := u[m-1,4];
u[m-1,4] := u[m,4];
u[m,4] := x;
end;
end;
end;
end;

OptL, OptW, OptH в последствии должны стать аргументами процедуры.
нужно отсортироватьвесь массив построчно в соответствии с убыванием элементов столбца k.
не обижусь, если рассматривать никто не будет. либо заранее благодарен)
Lelik_cool вне форума
Старый 22.09.2010, 16:30   #18
Lelik_cool
 
Регистрация: 08.09.2010
Сообщений: 4
По умолчанию

благодарю! вопрос снят!) спасибо огромное!!!
Lelik_cool вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача массивов в функции. Си Alar Общие вопросы C/C++ 12 08.02.2011 13:25
Как изменить значения переменной внутри процедуры kartalex Помощь студентам 5 20.11.2010 18:44
Форматирование текста внутри поля. как? или другие варианты... smoky Microsoft Office Access 2 26.12.2008 19:09
использование массивов! ...Оленька... Паскаль, Turbo Pascal, PascalABC.NET 2 22.12.2008 11:02
вычислить по формуле с использованием функции или процедуры St@FFord Паскаль, Turbo Pascal, PascalABC.NET 7 10.06.2008 10:18