- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
implementation
uses Unit1,Unit2,Unit3,Unit4,Unit5,Unit6,Unit7,Unit8;
{$R *.dfm}
var
k,Zst,zk,Vm12,Vm23,Vm34,Vm45,Vm56,Z2pr,Z3pr,Z4pr,Z5pr,Z6pr,Lm12,Lm23,Lm34,Lm45,Lm56,Vk,Vst,Q,q11,q2ob,q3ob,q4ob,q5ob,q6ob,
Sst,P1st,P2st,p0k,p12k,p23k,p34k,p45k,p56k,L0,Dk,Dst,H,Hst: real;
J0,j, i: integer;
const a=1.1; g=9.81; Y=0.03; x1=605; Y1=48; X2=772; Y2=104;
x3=627; Y3=107; X4=646; Y4=379;
x5=X3; Y5=194; X6=576; Y6=200;
x7=582; Y7=193; X8=576;
x9=X3; Y9=285; X10=526; Y10=291;
x11=532; Y11=284; X12=X10;
x13=650; Y13=380; X14=395; Y14=399;
x15=479; Y15=377; X16=473;
x17=394; Y17=Y13; X18=314; Y18=Y14;
x19=398; Y19=Y15; X20=392;
x21=314; Y21=Y13; X22=233; Y22=Y14;
x23=317; Y23=Y15; X24=311;
x25=233; Y25=Y13; X26=152; Y26=Y14;
x27=235; Y27=Y15; X28=229;
x29=152; Y29=Y13; X30=70; Y30=Y14;
x31=154 ; Y31=Y15; X32=148;
X33=70;Y33=Y13;X34=3;Y34=Y14;
X35=72;Y35=Y15;X36=66;
procedure TForm9.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Form9.visible:=false;
end;
Lure Of Chaos 12.09.2010 18:30 # 0
Stalker 12.09.2010 19:11 # +4
С 23 строки автор явно устал тужитьсякопипастить, и проебал Y36.
ZLOvar 12.09.2010 20:16 # 0
3.14159265 12.09.2010 20:31 # +9
guest6 17.09.2023 00:34 # 0
хуясе
guest6 17.09.2023 00:35 # 0
guest6 17.09.2023 00:35 # 0
Application was halted by an exception.
Debug-mode is off.
TarasB 12.09.2010 20:36 # +3
TarasB 12.09.2010 20:46 # −1
guest6 17.09.2023 00:34 # 0
bugmenot 12.09.2010 21:27 # +1
я даже боюсь сюда постить, очень всё шедеврально - http://www.everfall.com/paste/id.php?yacyylrzccpm
Stalker 12.09.2010 21:48 # +2
Stalker 12.09.2010 21:58 # 0
3.14159265 14.09.2010 10:13 # +2
и не зря. M4K3 M3 UNS33N 1T!
>>>очень всё шедеврально
да, но в то же время женщинам и детям я бы не рекомендовал смотреть на это
3.14159265 14.09.2010 10:21 # +1
Анонимус 13.09.2010 14:21 # 0
sanchousf 13.09.2010 17:58 # +4
Draw (...);
end;
Явно короче чем Canvas.Draw (...);
И Form9.visible:=false; при закрытии формы тоже доставило :)
Мистер Хэнки 13.09.2010 19:51 # +4
Анонимус 13.09.2010 19:59 # +6
Lure Of Chaos 13.09.2010 20:54 # +1
Анонимус 13.09.2010 21:09 # +1
Lure Of Chaos 13.09.2010 22:57 # +1
но не для построения сложных бизнес-систем
Анонимус 13.09.2010 22:59 # +3
просто в мире, где столько кода написано на пхп -- смешно ругать паскаль
inkanus-gray 13.09.2010 23:07 # +1
TarasB 14.09.2010 11:28 # +4
ctm 14.09.2010 13:32 # +2
оптимизация в Delphi вообще какая-то странная... несколько раз попадался код, который работает по-разному при включении и выключении оптимизации.
Причем без оптимизации работает корректно.
Сейчас пример уже не приведу, но оптимизацию всегда отключаю. В time-critical участках проще самому посмотреть, минимизировать обращения к памяти и стеку - результат обычно существенно лучше.
Для сравнения оптимизация кода в Visual Studio 2005:
n = ((++ a) / b) + ((a ++) % b);
в результате asm-код содержит 2 инкремента, 1 сложение и 1 деление.
А сам Object pascal вполне нормальный язык, возможности которого сравнимы с С++. Немного иной подход к ООП - но он имеет право на существование. Хотя отсутствие шаблонов, нормальных макросов, стековых экземпляров классов и, особенно, отсутствие inline функций иногда очень напрягает.
TarasB 14.09.2010 14:28 # +2
Я, как упоротый пользователь D7, хотел написать про это, но D2010 же есть.
> нормальных макросов
Корявых макросов тут нету,
Спасибо Вирту хоть за это!
> стековых экземпляров классов
type A = object итд
> и, особенно, отсутствие inline функций
D2010. В D7 их отсутствие, как и отсутствие перегрузки операторов, действительно напрягает, работа с 3хмерными векторами превращается в китайщину.
> несколько раз попадался код, который работает по-разному при включении и выключении оптимизации.
В D6 был такой баг, в новых тоже вроде есть, но D7 в этом плане чиста. И грузится влёт, если минимальный набор ставить (как я, только я добавляю редактор иконок, исходники VCL и помощь)
inkanus-gray 14.09.2010 16:50 # +1
3.14159265 14.09.2010 16:57 # +1
+я категорически согласен с Lure Of Chaos в нем нет элегантности и лаконичности
TarasB 14.09.2010 17:53 # +1
inkanus-gray 14.09.2010 16:56 # +2
> Спасибо Вирту хоть за это!
Сишников вынуждает использовать макросы отсутствие модульной структуры. Macros are evil! Они приводят к неуловимым ошибкам. Недаром в C# ввели-таки модули.
ctm 15.09.2010 07:16 # +1
И в Delphi, и в Lazarus есть подобие макросов:
{$i macrotext.inc}
но я бы это использовал тока если уже ничего другого не остается, ибо говнокод.
bugmenot 17.10.2010 23:40 # 0
а {$I file} aka {$INCLUDE file} - обычный для Сей плоский инклюд, ни разу не макро (хотя кулибины на них ухитрились сделать кривое подобие шаблонов)
макро совсем нет
inkanus-gray 14.09.2010 14:29 # +1
Он пару раз всплывал в говнокодах. Разные версии VS дают разный результат.
Новые версии Delphi хвалят за то, что у них крутой оптимизатор, и одновременно ругают за то, что у них глючный оптимизатор. Но тем не менее, у любой версии код более быстрый, чем у GPC и FPC. Насчёт оптимизации согласен. Изменение логики программы даёт ускорение, которое не даст никакой оптимизатор.
Спасибо за явное перечисление недостатков.
guest6 17.09.2023 00:35 # 0
азаза
Lure Of Chaos 14.09.2010 16:33 # +2
как и бейсик, в нем нет элегантности и лаконичности, слишком много ключевых слов - те же begin и end
в нем нет встроенной поддержки алгоритмических структур (например хэши, они же карты, динамические массивы), нет работы с потоками и т.д. и т.п.
То есть, теоретически такую поддержку можно обеспечить включением дополнительных модулей, но их интерфейс будет неуклюжим, что обеспечено архитектурой самого языка
даже простые вещи, вроде работы с файлами, требуют неоправданных усилий со стороны программиста
поэтому код разбухает очень сильно, что даже психологически его утомительно читать - как следствие, с ростом кода, увеличивается кошмар поддержки больших систем
TarasB 14.09.2010 16:39 # 0
Они лучше видны в коде, в отличие от фигурных скобок.
> в нем нет встроенной поддержки алгоритмических структур
У Паскаля нету СТЛ, это его минус как языка типа?
> динамические массивы
Их нету в Паскале?!
> нет работы с потоками
Их нету в Паскале?!
> даже простые вещи, вроде работы с файлами
Assign; Rewrite; Close; что проще?
Lure Of Chaos 14.09.2010 16:46 # +2
нет, хуже, потому что больше букв
> У Паскаля нету СТЛ, это его минус как языка типа?
допустим, СТЛ чьими-то усилиями реализован. Код использования его так же был бы уродлив. Кроме того, сторонние библиотеки не унифицированы и увеличивают размер кода и стоимость поддержки
> Их нету в Паскале?!
Их нету в Паскале. Дельфи в расчет не берем
> Assign; Rewrite; Close; что проще?
допустим, мы хотим считать весь файл в утф8, каждую строку в массив. Код, реализующий это просто ужасен
TarasB 14.09.2010 17:56 # +2
Хуже видны, потому что больше жирных цветных букв?! Не лагай.
> Код использования его так же был бы уродлив.
Как в С++? Нет, будем меньшее уродство, потому что меньше закорючек.
> Их нету в Паскале. Дельфи в расчет не берем
Ололо, давайте вспоминать, чего нет в С89.
> допустим, мы хотим считать весь файл в утф8, каждую строку в массив. Код, реализующий это просто ужасен
А в С++ есть готовый оператор для этого, встроенный в язык, да?
Наличие/отсутствие библиотек - это особенности не языка, а реализации.
Короче, продолжишь, когда опохмелишься.
Lure Of Chaos 14.09.2010 22:50 # 0
вовсе не потому. см http://govnokod.ru/4232#comment47648
> Как в С++? Нет, будем меньшее уродство, потому что меньше закорючек.
С был идеален. С++ не идеален (избыток закорючек), но верхом элегантности я считаю Java.
> Ололо, давайте вспоминать, чего нет в С89.
а я имел ввиду именно паскакаль. Дельфи лучше, но его многабуквенный синтаксис остался, это лично меня раздражает
> А в С++ есть готовый оператор для этого, встроенный в язык, да?
в С++ запись короче и элегантней, хотя тоже непаханое поле для улучшений
> Наличие/отсутствие библиотек - это особенности не языка, а реализации.
Согласитесь, набор стандартных библиотек - это намного приятнее, нежели головная боль, где и какие библы достать. Опять приведу в пример Java, где достаточно хорошая стандартная библиотека(или совокупность таковых) для большинства распространенных задач
> Короче, продолжишь, когда опохмелишься.
Прошу без оскорблений, иначе не буду выражать свою точку зрения вообще (прим.переводчика: в тексте "иди ты нахуй"). Хотите, программьте на дельфях, а я с этим тра...мучаться не буду, а возьму родную Java.
TarasB 14.09.2010 22:58 # +1
В своём году.
> а я имел ввиду именно паскакаль
Хорошо хоть, что не Алгол-67.
> в С++ запись короче и элегантней, хотя тоже непаханое поле для улучшений
И читаемее? Скорость написания намного менее важна, чем скорость врубания.
> Согласитесь, набор стандартных библиотек - это намного приятнее, нежели головная боль, где и какие библы достать.
Это относится к реализации.
Lure Of Chaos 14.09.2010 23:13 # +1
> В своём году.
как и паскаль
> Хорошо хоть, что не Алгол-67.
вот именно, сравнение удачное
> И читаемее?
зависит от самого кода. Можно писать и так и так
> Это относится к реализации
конечно, не стоит все пихать в язык.
TarasB 14.09.2010 23:19 # 0
Lure Of Chaos 14.09.2010 23:23 # +2
3.14159265 15.09.2010 09:28 # +1
>>>я еще в древние времена, турбопаскалем заработал аллергию на этот язык. Когда малость поинтересовался дельфями, то увидел, что там те же раздражающие факторы
+7
Lure Of Chaos 15.09.2010 12:51 # +1
Stalker 15.09.2010 13:23 # 0
Вот так прямо сходу за ООП?
TarasB 15.09.2010 15:08 # +1
Stalker 15.09.2010 22:54 # +4
Принуждение к распиздяйству по отношению к системным ресурсам.
guest6 28.07.2023 19:50 # 0
TarasB 15.09.2010 10:26 # −1
XYPO3BO3 17.12.2019 17:20 # 0
guest6 28.07.2023 19:51 # 0
Дельфи -- странная штука
Desktop 17.09.2023 01:11 # 0
– какие страсти
guest6 17.09.2023 02:00 # 0
bugmenot 14.09.2010 18:08 # −1
чисто обезьяний довод, вы уж меня простите
absolut 14.09.2010 20:27 # +1
я думаю, обезьянам до букв параллельно.
паскаль создавался как язык для обучения, а нубам (англоговорящим) проще воспринимается begin,end нежели скобки. потом они подучивают немного вышки и скобки становятся приятнее глазу.
Lure Of Chaos 14.09.2010 22:35 # +1
Таким образом, что такое программирование, поймут больше идиотов, нежели начать обьяснять абстрактные скобки
inkanus-gray 14.09.2010 22:52 # +1
Хреново, что в Сях семантика синтаксической конструкции зависит от контекста, т. е. один и тот же символ может расшифровываться по-разному. В Паскале таких примеров меньше.
Lure Of Chaos 14.09.2010 23:02 # 0
возможно и так, но, у меня есть подозрения, что их происхождение императивно-коммандное
> Хреново, что в Сях семантика синтаксической конструкции зависит от контекста
это достаточно вкусная возможность, впрочем, усложняющая понимание кода при недостаточно продуманном использовании этой возможности.
Мне даже немного жалко, что в яве отказались от множественного наследования и перегрузки операторов, например.
3.14159265 15.09.2010 09:30 # 0
насичот множественного и да и нет - да иногда очень надо, нет - говнокода стало было больше поскольку тулили бы его где надо и где не надо.
насичот перегрузки 100% да. или че чтоб поюзать перегрузку мне нада юзать груви?
Lure Of Chaos 16.09.2010 17:25 # 0
видимо приходится юзать именованные методы
Stalker 15.09.2010 10:15 # 0
При определённом опыте и нормальной подсветке они с первого взгляда читаются именно как скобки, но согласен, занимают многовато места.
bugmenot 15.09.2010 23:23 # 0
Lure Of Chaos 16.09.2010 02:54 # 0
guest6 28.07.2023 19:54 # 0
Это не правда всё таки. Создавался он вполне для продакашена, просо так вышло, что стал популярен для обчеимя
Lure Of Chaos 14.09.2010 22:32 # +1
Это тот же самый эффект, для сравнения, если читать текст с кеглем 12-14 пунктов, и, скажем, 48 пунктов.
Если вам разница неочевидна, поставьте эксперимент: сохраните любую статью из интернета и откройте ее в ворде. Прочитайте. Затем выделите все и увеличьте размер текста до 48, и снова прочитайте. И сравните усталость после прочтения в первом и во втором случае. Если разница незаметна, возьмите статью в 2 раза обьемнее.
TarasB 14.09.2010 22:43 # +1
В случае же с бегином разницы нет, один хрен он занимает одну строчку (у меня ноль), как и фигурная скобочка.
А вот то, что скобоки вынуждают делать отступы не в 2 символа а в 4, это уже существенно. Да, почему дельфисты 2 отступа делают, а сишникам уже и 4 мало? Не в моде дело, а скобочки фигурные их вынуждают. И код расползается в ширину, его труднее смотреть, вот так вот. Так что бегин-енд рулят, хотя, согласен, смотрятся как-то убого, допотопно.
Lure Of Chaos 14.09.2010 22:56 # 0
то же самое при использовании длинных [ключевых] слов
> скобоки вынуждают делать отступы не в 2 символа а в 4
это почему? не согласен.
лично я делаю отступы и со скобками 1 пробел (ставля размер шрифта 8) и не вижу никаких вынужденных неудобств
и уж скорее "код расползается в ширину" именно благодаря длинным ключевым словам (5, 3 символа против 1 символа на скобку)
можете более подробно обьяснить этот момент?
TarasB 14.09.2010 23:04 # +1
2. Я вот, когда на С++ делал 2 отступа, плохо видел, где что кончается, если бегин-енд образовывали чёткую рамочку (только не всегда бегин, иногда иф или фор, я бегин оставляю на старой строчке, чтобы не слишком жирно было), то лёгкие фигурные скобки были издали еле заметны. Стал делать 4 - стало легче.
Lure Of Chaos 14.09.2010 23:19 # 0
2. наверное, это дело привычки, у меня подобных проблем никогда не было. Но за время использования бейсиков-паскалей заработал аллергию на переизбыток ключевых слов (например, раздражало, что в бейсике for должен заканчиваться только next, а while - wend. При таком подходе при изменении одного ключевого слова нужно еще где-то ниже менять ему парное ключевое)
3.14159265 15.09.2010 09:37 # +1
и несмотря на это мне нравилось в бейсике что там не нада открывающее слово типа begin писать -почти как ява-стайл расставления скобок - на одной строке с оператором.
>>>а while - wend
кстати есть крайне гибкий do..loop. паскалевские циклы сосут.
Stalker 15.09.2010 10:03 # +1
trollface.pas :))
А чем не нравится Вот сишного for () не хватает, да.
ctm 15.09.2010 12:05 # +1
+1. лично я первые 4 года плевался ядом. а потом просто плевался.
3.14159265 15.09.2010 12:23 # +1
>>while условие do ... ;
>>repeat ... until not условиe
а тем, что когда меня заставляли писать на этом ... и рисовать блок-схемы к коду. в силу упаянности препода паскалем оказалось, что
в блок-схемах можно использовать цикл с пост-условием и not <условие> и цикл с предусловием раб по true.
никаких других альтернатив быть не могло. я поначалу не въехал с чего бы это вдруг кроссязыковым блок-схемам иметь подобные ограничения, а
потом понял что это результат повышенной фимозности.
в том же бейсике
do
...
loop
while и until можно писать как сверху так и снизу. или вообще не писать ))) - аналог сишный for(;;).
Stalker 15.09.2010 13:29 # 0
Удобно. Одно из немногих преимуществ Basic перед паскалем и остальными (включая православные С-подобные языки).
TarasB 15.09.2010 10:30 # 0
Stalker 15.09.2010 10:05 # 0
Вот это как раз к паскалю и не относится. Операторные скобки begin/end универсальны.
Lure Of Chaos 15.09.2010 12:46 # +2
TarasB 15.09.2010 10:29 # 0
На 4 символа? Ты неадекватен и сам в этом признался.
> При таком подходе при изменении одного ключевого слова нужно еще где-то ниже менять ему парное ключевое
О, это уже что-то дельное. Правда, к Паскалю это не относится.
Lure Of Chaos 15.09.2010 12:47 # +1
почему на 4? не обязательно.
TarasB 15.09.2010 15:10 # +2
Или у тебя много бегинов в одной строке?
А, ещё бесит писать слово ПРОЦЕДУРА (или ФУНКЦИЯ), это я бы убрал из языка.
ctm 16.09.2010 10:43 # +2
+1, еще не гуд, что блок не всегда выделяется begin/end, например repeat/until, try/except. В С++ в любом случае будет скобки... хотя все это дело практики
Lure Of Chaos 16.09.2010 17:28 # 0
ctm 17.09.2010 07:07 # 0
Lure Of Chaos 17.09.2010 10:17 # +2
3.14159265 14.09.2010 09:43 # +1
LOL"D
>>паскаль не виноват) это далеко не самый плохой язык между прочим)
>>просто в мире, где столько кода написано на пхп -- смешно ругать паскаль
согласен
>>для обучения, например
не согласен, как по мне не обучает он хорошему стилю - скоко студентоты его учит и такое обилие говен.
Вот меня он ничему вооще не научил - я только испытываю лютую ненависть к наиудобнейшим паскалевским циклам в частности...
Вот зачем? ну создал Вирт язык для обучения - не учить же потому всем его поголовно, чтобы в итоге писать С-like код.
но пых это вообще жесть.
inkanus-gray 14.09.2010 14:33 # +1
absolut 14.09.2010 14:41 # +2
inkanus-gray 14.09.2010 14:58 # +2
3.14159265 14.09.2010 16:50 # +2
Вы скрытно рекламируете БРЕЙНФАК!!!
>>>Это точно!
это точно - полнейшая миниммалистичность, простая кроссплатформенность и компилер меньше чем 200 байт.
ИТОГ: пусть учатся кодить на брейнфаке - полезно для головы
3.14159265 14.09.2010 16:51 # 0
а на паскале/делфях сложные продукты занимают меньше памяти/ЦПУ чем на Си?
или как писать сложнейшие корпоративные системы на асме?
хотя я и сам люблю асм и подобное транжирство мне очень не по душе.
но повторяю - брейнфак - именно то что надо
inkanus-gray 14.09.2010 16:59 # +1
Это зависит от программиста и от используемых библиотек больше, чем от языка. Хотя если брать в сравнение скриптовые языки...
absolut 14.09.2010 20:21 # +3
ctm 15.09.2010 07:47 # +1
Важно уменьшение производственных затрат, т.к. их несет сам разработчик ПО (в смысле софтверная компания). А основными производственными затратами является ФЗП.
Соответственно, снижение трудозатрат на разработку (а значит и сокращение штата сотрудников) - одна из основных целей руководства софтверной компании.
ctm 15.09.2010 07:49 # 0
absolut 15.09.2010 12:21 # +2
В дельфях уже может быть компонент TTetris :)))
3.14159265 15.09.2010 12:28 # 0
LOL"D, да это особенность делфей)))
правда он с вероятностью 90% будет иметь баги - тоже особенность.
ctm 15.09.2010 13:42 # +1
его надо найти, ознакомиться, вытоптать грабли - тоже время нужно
Desktop 17.09.2023 01:12 # 0
ctm 15.09.2010 07:36 # +1
от выбора языка никак не зависит насколько говен будет код студентов. Он будет говен в любом случае.
Мистер Хэнки 16.09.2010 09:52 # 0
inkanus-gray 13.09.2010 21:45 # +3
Так будет лучше?
bugmenot 14.09.2010 00:46 # +1
TarasB 14.09.2010 11:25 # 0
Stalker 14.09.2010 11:30 # +3
UPD: А вообще, казнил бы за такой код (автора я имею ввиду) Но основная мысль передана верно.
v1m 15.10.2010 20:20 # 0
bugmenot 17.10.2010 23:48 # 0
В Паскале константы можно свалить в кучу, а в C++ нельзя! Следовательно, C++ - отстой, lul
v1m 18.10.2010 21:20 # 0