|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
03.12.2011, 10:45 | #1 |
Верховный Судья
Пользователь
Регистрация: 23.11.2010
Сообщений: 82
|
Missing operator or semicolon
Здравствуйте!
Скажите пожалуйста, почему у меня delphi ругается на вот этот кусок кода? Причём в том месте, где у меня первый раз написана функция random Код:
Никак не могу понять, где в моей программе изъян? Этот кусок кода находится в позиции 100023 строке. Может он бредит из за того, что у меня очень много кода? |
03.12.2011, 12:09 | #2 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
я бы сказал, что проблемы с f1, но не видя, как оно объявлено, гадать можно долго.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
03.12.2011, 17:35 | #3 | |
C++ & PHP & Asm
Форумчанин
Регистрация: 06.12.2008
Сообщений: 300
|
Придерживаться нормам синтаксиса не учили? Самому не впадлу читать подобную "ахинею"?
Цитата:
|
|
03.12.2011, 17:51 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Аргумент у Random (если есть) типа Integer должен быть. С этого начать следует. И подсмотреть в любом дельфийском юните примеры оформления кода
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
03.12.2011, 18:19 | #5 |
Форумчанин
Регистрация: 08.06.2011
Сообщений: 693
|
Ответ на данный вопрос не будет дан или будет дан очень поздно, т.к. код плохо оформлен. Вот красиво оформленный код:
Код:
|
03.12.2011, 19:01 | #6 |
C++ & PHP & Asm
Форумчанин
Регистрация: 06.12.2008
Сообщений: 300
|
Вот, другое дело, теперь более менее приятно смотреть.
Ну, во-первых: Random([Range: Integer]) Соответственно, если не задать значение, то появиться ошибка. Во-вторых: Тип Double/Float/Extended/Real несовместим с типом Int из-за запятой, соответственно всё это дело надо перевести в тип Int предварительно округлив значение до целого числа с помощью функции round(X: Real); В третьих: Без инициализации процедуры Randomize, функция Random бессполезна. Код:
З.Ы.: Встроенный дебаггер для чего? Используем F7, F8 - выявляем где ошибочки. Последний раз редактировалось QunneD; 03.12.2011 в 19:07. |
03.12.2011, 21:46 | #7 | ||||
Верховный Судья
Пользователь
Регистрация: 23.11.2010
Сообщений: 82
|
ээ, конечно спасибо за критику!
Но есть несколько НО: Цитата:
Цитата:
Если бы была ошибка по этому поводу, то она была бы по несовместимости типов Extended и Integer. Я не дурак и про то, что десятичная дробь отлична от целого числа, я знаю, но в strtofloat я ошибся. Да, кстати, функция random существует в 2 видах: с аргументом типа integer, возвращающая значение integer, и вообще без аргументов, возвращающая значение типа extended. В третьих: Не правда! Функция Random работает и без Randomize, но хуже. Randomize предаёт рандому более "разбросанный" вид. Цитата:
Цитата:
Отладка может происходить только в процессе работы программы! Ну вобщем, спасибо вам всем за всё, но проблема то была совсем явной: я создал тип Код:
Ошибку решил, убрав из типа константу random. Последний раз редактировалось impulsgraw; 04.12.2011 в 13:00. |
||||
04.12.2011, 02:59 | #8 | ||
C++ & PHP & Asm
Форумчанин
Регистрация: 06.12.2008
Сообщений: 300
|
Уважаемый, мы не экстрасенсы.
Цитата:
Использовав три восклицательных знака, Вы только что нарушили правила форума, в курсе об этом? Цитата:
Основная мысль в том что она обязательно появиться. Поскольку вопрос исчерпан, до свидания. Последний раз редактировалось QunneD; 04.12.2011 в 03:11. |
||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
возникает ошибка Missing operator or semicolon (классы) | fate | Общие вопросы Delphi | 16 | 22.02.2011 19:12 |
missing operator or semicolon - Как получить секунды [Delphi] | bulldog5293 | Помощь студентам | 8 | 10.12.2010 16:30 |
ошибкa "missing operator or semicolon" | Дим@@ | Помощь студентам | 3 | 11.11.2010 15:14 |
ошибка: no match for ‘operator<<’ in ‘std::operator<< [with _Traits = std::char_traits<char> | Critter | Общие вопросы C/C++ | 5 | 08.08.2010 23:38 |
NTLDR is missing... | melkortheshadow | Windows | 7 | 19.09.2009 03:03 |