Модераторы: volvo877, Snowy, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Label, GOTO - можно ли использовать? 
:(
    Опции темы
petru4o
Дата 18.3.2009, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 17.3.2009
Где: Донецк,Украина

Репутация: нет
Всего: нет



по сабжу.вроде как не рекомендуется использовать,выполнение программы с ссылками будет дольше нежели просто программа,где ссылки заменены к примеру,подпрограммами,или же комбинацией циклов/ветвлений 
PM MAIL WWW ICQ GTalk   Вверх
AXOXC
Дата 18.3.2009, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 17.3.2009

Репутация: нет
Всего: нет



Цитата(volvo877 @  18.3.2009,  15:51 Найти цитируемый пост)
Цитата(AXOXC @  18.3.2009,  13:40 Найти цитируемый пост)
но не суть важно. 
Конечно неважно, обвинить другого, что у него неверно, а потом рассмеяться и сказать: "Ну, это неважно"... 

Так вот иди и учи синтаксис. А потом будешь искать ошибки в чужих программах. Или (ХОТЯ БЫ) потрудись запустить то, что выложено. И посмотреть, что выдается...


Цитата(AXOXC @  18.3.2009,  13:04 Найти цитируемый пост)
но а если нужен рандом из 100-150 чисел тогда будем строке присваивать значения в массиве? 
Я, кажется, ясно написал: 
Цитата(volvo877 @  17.3.2009,  13:00 Найти цитируемый пост)
для столь искусственной задачи и еще более искусственного ограничения (ну, чем ему помешали циклы?) существует вариант и без циклов и без goto:
, т.е., решение приводилось для конкретной задачи, а не "если бы да кабы". Вот когда будет "если", тогда и будешь думать, как решить проблему.

Цитата(AXOXC @  18.3.2009,  13:04 Найти цитируемый пост)
идиальным вариантом является через while

Вообще-то не через While, а через Repeat. Потому что сначала надо сгенерировать новое число, и только потом проверять, а не повторилось ли оно. 


Что ж вы так все воспринимаете( Я не хотел ни обвинять кого-то в ошибках ни обвинять чьи-то слов и т. д. Просто увидил метод решения впервые и попытался в нем разобраться. 
PM MAIL ICQ   Вверх
Metalex
Дата 18.3.2009, 18:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 635
Регистрация: 22.10.2008
Где: Украина-ZPсity

Репутация: нет
Всего: нет



Цитата(petru4o @  18.3.2009,  16:44 Найти цитируемый пост)
по сабжу.вроде как не рекомендуется использовать,выполнение программы с ссылками будет дольше нежели просто программа,где ссылки заменены к примеру,подпрограммами,или же комбинацией циклов/ветвлений 

хм.. ну это еще зависит от количества циклов)
а насчет времени интересно..
Цитата(petru4o @  18.3.2009,  16:44 Найти цитируемый пост)
вроде как

знать бы точно..
никто не подскажет так ли оно?


--------------------
Don't let the system get you down.
PM WWW ICQ Skype   Вверх
petru4o
Дата 19.3.2009, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 17.3.2009
Где: Донецк,Украина

Репутация: нет
Всего: нет



Metalex, ну меня паскалю в свое время учил камрад с форума этого в реале.Rodman вроде ник здесь.гонял,чтобы не использовали
PM MAIL WWW ICQ GTalk   Вверх
THandle
Дата 19.3.2009, 17:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: нет
Всего: 372



ИМХО, ничего в использовании goto страшного нет. Но использовать его следует только там, где это действительно необходимо.
То есть, в ситуации, где без goto выкрутится никак уже нельзя, или "выкручивание" будет занимать намного больше места, и будет менее понятно, нежели использование goto.
Такой ситуации я еще не встречал и goto в программировании на Delphi/Pascal не использовал. На C пару раз приходилось. 

Вполне может быть оправдано использование goto в связке с assembler'ом.
Пример:
Код


program Ex1;

label UUU, ex;

var
  I: Integer;
begin
  ReadLn(I);
  asm
    cmp I, 5
    jz UUU
    jmp ex
  end;
  UUU:
    WriteLn('5');
    ReadLn;
  ex:
    Exit;
end.


Тут goto, конечно не нужен, да и пример корявый. Но это может пригодится.
Даже тут использован не goto, а метки и переход с помощью jmp.
Например, использовано тут:

http://forum.vingrad.ru/index.php?showtopi...t&p=1630388

В циклах без goto можно обойтись используя continue, break. В Delphi вместо goto можно еще использовать конструкцию try..except..end с поднятием исключений в нужном случае(raise). Хотя тоже мутный способ =))

Вот такое ИМХО.
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi"
THandle
Rrader
volvo877

Запрещается!

1. Обсуждать и делится взломанными компонентами или программным обеспечением

2. Публиковать ссылки на варез

3. Оффтопить

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема »


 




[ Время генерации скрипта: 0.1061 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.