Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #46  
Старый 05.01.2012, 03:21
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Так не пойдёт, давай архив.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #47  
Старый 05.01.2012, 03:53
TheVenom TheVenom вне форума
Прохожий
 
Регистрация: 29.12.2011
Сообщения: 31
Репутация: 10
Восклицание

Вот в чем проблема:
Код:
    for I := min1 to Length(byteArray) - 2 do
      byteArray[i] := byteArray[I + 1];
    SetLength(byteArray, Length(byteArray) - 1);
мы находим минимальный элемент, затем его удаляем. НО, после этого удаления программа не видит последний индекс массива. то есть мы с каждой итерацией удаляем из массива последний индекс, а когда доходим до первого, то программа зацикливается.
Ответить с цитированием
  #48  
Старый 05.01.2012, 03:55
TheVenom TheVenom вне форума
Прохожий
 
Регистрация: 29.12.2011
Сообщения: 31
Репутация: 10
По умолчанию

Цитата:
Сообщение от TheVenom
Вот в чем проблема:
Код:
    for I := min1 to Length(byteArray) - 2 do
      byteArray[i] := byteArray[I + 1];
    SetLength(byteArray, Length(byteArray) - 1);
мы находим минимальный элемент, затем его удаляем. НО, после этого удаления программа не видит последний индекс массива. то есть мы с каждой итерацией удаляем из массива последний индекс, а когда доходим до первого, то программа зацикливается.
это если использовать "while".
Ответить с цитированием
  #49  
Старый 05.01.2012, 04:15
TheVenom TheVenom вне форума
Прохожий
 
Регистрация: 29.12.2011
Сообщения: 31
Репутация: 10
Восклицание

В первом архиве находится программа. Во втором - пошаговое описание всех действий на иллюстрациях, для лучшего переваривания.
Вложения
Тип файла: rar жесть.rar (180.2 Кбайт, 2 просмотров)
Тип файла: rar план.rar (105.0 Кбайт, 3 просмотров)
Ответить с цитированием
  #50  
Старый 05.01.2012, 09:56
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

надо было завести в edit-ы сразу входные данные, чтобы осталось только нажать на кнопку
ещё при нажатии на кнопку не должно происходить цикла, а только один шаг, или если цикл, то с перерисовкой и паузой, чтобы видеть по шагам что происходит
и на плане на самих скринах укажи что должно происходить по шагам, а для этого нужно хоть немного понимать как тот алгоритм работает
Ответить с цитированием
  #51  
Старый 05.01.2012, 17:41
TheVenom TheVenom вне форума
Прохожий
 
Регистрация: 29.12.2011
Сообщения: 31
Репутация: 10
По умолчанию

Цитата:
Сообщение от Pyro
надо было завести в edit-ы сразу входные данные, чтобы осталось только нажать на кнопку
ещё при нажатии на кнопку не должно происходить цикла, а только один шаг, или если цикл, то с перерисовкой и паузой, чтобы видеть по шагам что происходит
и на плане на самих скринах укажи что должно происходить по шагам, а для этого нужно хоть немного понимать как тот алгоритм работает
я ничего не понял. можно по конкретней?
Ответить с цитированием
  #52  
Старый 05.01.2012, 21:08
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

выглядит всё так, как если бы ты не понимал что должно происходить в этой программе.
если я ошибаюсь тогда вырази то что должно происходить доступным способом, надо обьяснять почему тот <план - пошаговое описание всех действий на иллюстрациях> ничего не выражает?
Ответить с цитированием
  #53  
Старый 06.01.2012, 00:38
TheVenom TheVenom вне форума
Прохожий
 
Регистрация: 29.12.2011
Сообщения: 31
Репутация: 10
По умолчанию

там все довольно понятно описано. Что именно тебе непонятно?
Ответить с цитированием
  #54  
Старый 06.01.2012, 00:41
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Понятно кому? Почему Edit-ы первоначально не инициализированы?
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #55  
Старый 06.01.2012, 01:21
TheVenom TheVenom вне форума
Прохожий
 
Регистрация: 29.12.2011
Сообщения: 31
Репутация: 10
По умолчанию

Цитата:
Сообщение от angvelem
Понятно кому? Почему Edit-ы первоначально не инициализированы?
в смысле??
Ответить с цитированием
  #56  
Старый 06.01.2012, 01:23
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Общение глухого со слепым, начинается обычный флейм и тему можно закрывать.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #57  
Старый 06.01.2012, 01:34
TheVenom TheVenom вне форума
Прохожий
 
Регистрация: 29.12.2011
Сообщения: 31
Репутация: 10
Восклицание

ок. начнем по новой...
Цитата:
Сообщение от TheVenom
Вот в чем проблема:
Код:
    for I := min1 to Length(byteArray) - 2 do
      byteArray[i] := byteArray[I + 1];
    SetLength(byteArray, Length(byteArray) - 1);
мы находим минимальный элемент, затем его удаляем. НО, после этого удаления программа не видит последний индекс массива. то есть мы с каждой итерацией удаляем из массива последний индекс, а когда доходим до первого, то программа зацикливается.
это если использовать "while".
Ответить с цитированием
  #58  
Старый 06.01.2012, 01:56
TheVenom TheVenom вне форума
Прохожий
 
Регистрация: 29.12.2011
Сообщения: 31
Репутация: 10
По умолчанию

если кто то пытался пошагово запустить мою программу, то думаю вы заметили что после каждой итерации массива, массив сокращается на 1 индекс. НО значения индексов не смещаются и получается что мы с каждой итерацией просто удаляем последний индекс массива и на этом наш цикл завершается... Как сделать так, чтобы при удалении индекса значения индексов смещались???
Ответить с цитированием
  #59  
Старый 06.01.2012, 06:06
TheVenom TheVenom вне форума
Прохожий
 
Регистрация: 29.12.2011
Сообщения: 31
Репутация: 10
По умолчанию

Как сделать так чтобы массив не видел индекс, заблокировать его или еще что то сделать? Может быть есть какая нибудь функция или команда???
НЕ ТАК КАК ЗДЕСЬ:
Код:
for I := min1 to Length(byteArray) - 2 do
      byteArray[i] := byteArray[I + 1];

    SetLength(byteArray, Length(byteArray) - 1);
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 21:08.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter