|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
04.07.2011, 02:51 | #1 |
Регистрация: 04.07.2011
Сообщений: 6
|
Как StringGrid может влиять на random ?
Код:
___________ Код нужно оформлять по правилам: тегом [CODE]..[/СODE] (это кнопочка с решёточкой #) Не забывайте об этом! Модератор. Последний раз редактировалось Serge_Bliznykov; 04.07.2011 в 08:31. |
04.07.2011, 03:19 | #2 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Поведение странное, но теоретически никак. StringGrid только отображает инфу. Ищите ошибку в другом месте.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
04.07.2011, 08:37 | #3 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
1-я (принципиальная!) ошибка.
Randomize НЕ НАДО крутить в цикле!! (А в идеале его вообще один раз надо выполнить при запуске приложения. Например, на событие формы OnCreate 2-e. random(51) вернёт число от 0 до 50. поэтому последняя карта вообще никогда не будет роздана! 3-е. не злоупотребляйте глобальными переменными! А уж тем более, когда Вы их изменяете в процедуре/функции! (я имею в виду массив koloda[] ) Но, главное. по сути, я абсолютно согласен с Smitt&Wesson - стрингрид никак не может влиять! (ну, если только в другом месте программы Вы из стрингрида не читаете какие-то данные, разумеется!) Ищите все места обращения к стрингриду (на чтение оттуда!) и исправляйте! |
04.07.2011, 09:21 | #4 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
4-е. Возможно где-то в обработчике СтрингГрида (например, клацание мышью) раньше проводились какие-либо манипуляции с колодой...
ЗЫ. А вообще логика странная. Как я понял вы игроков закрепляете за определенными картами, хотя по идее должно быть наоборот...
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика Последний раз редактировалось Utkin; 04.07.2011 в 09:23. |
04.07.2011, 11:26 | #5 | |||
Регистрация: 04.07.2011
Сообщений: 6
|
Цитата:
Цитата:
Цитата:
|
|||
04.07.2011, 11:38 | #6 | |
Регистрация: 04.07.2011
Сообщений: 6
|
Цитата:
|
|
04.07.2011, 12:54 | #7 |
Регистрация: 04.07.2011
Сообщений: 6
|
Создал новый проект, и скопировал в него весь код (без StringGrid) все работает правильно. Очевидно какой то глюк delphi.
|
04.07.2011, 13:30 | #8 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
> Очевидно какой то глюк delphi
Да ну. Скорее очевидно, что у вас где-то обращение к неинициализированным данным, поэтому код работает по-разному. То, что он заработал в новом проекте, совсем не значит, что ошибка исправлена.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как несиправный жёсткий диск может влиять на загрузку CD-рома??? | СисТемникс | Компьютерное железо | 2 | 28.10.2010 14:53 |
Как реализовать random float? | VintProg | Общие вопросы Delphi | 6 | 18.08.2009 09:41 |
как в с помощью random заполнить одномерный массив вещественными числами | Deniska112 | Общие вопросы C/C++ | 2 | 04.06.2009 09:36 |
Ко всем кто может хоть как-то подсказать как решить проблему | porfonya | Microsoft Office Access | 1 | 26.05.2009 17:38 |
ещё раз про Random (вдогонку к закрытой теме 'НЕ ПОЙМУ КАК ВЫВИСТИ ЧИСЛО') | Serge_Bliznykov | Общие вопросы Delphi | 1 | 20.04.2008 12:37 |