![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 19.09.2010
Сообщений: 5
|
![]()
Не работает программа, результат - только мерцание черного окошка.
Программа должна выводить массив чисел. Заполнение происходит так: -имеем массив 1 с целыми числами от 1 до 2000; далее циклом. выполняется, пока массив 1 не будет пуст. -получаем случайное число в диапазоне от 1 до 2000; -записываем число в массив 2, который будет выводится; -проверяем есть ли это число в массиве 1, если да, то вычеркиваем его из массива 1; -проверяем массив 1 на пустоту, если пустой, то заканчиваем заполнение массива 2. Код:
Последний раз редактировалось Ult1m; 19.09.2010 в 18:46. |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 08.10.2007
Сообщений: 1,185
|
![]()
А кто будет SetLength для M2 делать?
|
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 19.09.2010
Сообщений: 5
|
![]()
добавил SetLength(М1,100000). и кстати, как задавать длину, если не известен конечный размер массива?
после запуска ошибка |
![]() |
![]() |
![]() |
#4 | ||
Заблокирован
Форумчанин
Регистрация: 30.12.2009
Сообщений: 544
|
![]() Цитата:
Только вместо M1 впишите M2,M1 то имеет конечную длину 2000. Из-за этого у Вас и вылетает Access Violation. Цитата:
P.S. С количеством итераций больше 5000 поаккуратней,сто тысяч итераций не вздумайте делать без особой надобности.
Темы для WordPress. Русские WordPress шаблоны
Последний раз редактировалось Alexei91; 19.09.2010 в 17:24. |
||
![]() |
![]() |
![]() |
#5 |
Новичок
Джуниор
Регистрация: 19.09.2010
Сообщений: 5
|
![]()
ошибся тут, длину я задал М2.
я имел ввиду другое про задание длины - конечная длина неизвестна, какое тогда число писать? через cmd вот: Последний раз редактировалось Ult1m; 19.09.2010 в 17:44. |
![]() |
![]() |
![]() |
#6 | |
Заблокирован
Форумчанин
Регистрация: 30.12.2009
Сообщений: 544
|
![]()
Перед первым Repeat ставите
Код:
randomize - исключение повтора значений ГСЧ. Цитата:
- тут уже логика работы Вашего приложения. Память под дин. массив соответственно выделяется динамически. ![]() И все действия с дин. массивами происходят медленнее, чем со статическими. Возьмите любой нормальный учебник по Pascal/Delphi или найдите в Ин-те.
Темы для WordPress. Русские WordPress шаблоны
Последний раз редактировалось Alexei91; 19.09.2010 в 18:17. |
|
![]() |
![]() |
![]() |
#7 |
Новичок
Джуниор
Регистрация: 19.09.2010
Сообщений: 5
|
![]()
значения должны повторятся, поэтому и используется первый массив, из которого они исключаются. и когда нечего будет исключать - тогда завершение программы.
немного упростил программу, убрал второй repeat. выдает 1 всегда. остальные элементы массива 2 равны 0. Код:
Последний раз редактировалось Ult1m; 19.09.2010 в 19:35. |
![]() |
![]() |
![]() |
#8 |
Новичок
Джуниор
Регистрация: 19.09.2010
Сообщений: 5
|
![]()
решение найдено
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Не работает программа | looloo | Помощь студентам | 0 | 27.05.2010 21:53 |
не работает программа | Rusic | Общие вопросы C/C++ | 2 | 19.05.2010 23:16 |
Не работает программа | ddr9225 | Общие вопросы C/C++ | 21 | 14.01.2010 14:06 |
Программа не работает | ZYRGiX | Помощь студентам | 2 | 22.07.2008 21:44 |
Программа не работает | Михаил Юрьевич | Общие вопросы Delphi | 2 | 19.04.2008 23:27 |