- 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
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
procedure Tform1.mix;
begin
randomize;
a[1]:=random(16)+1;
btn[1].Caption:=inttostr(a[1]);
begin
repeat
a[2]:=random(16)+1
until
a[2]<>a[1];
btn[2].Caption:=inttostr(a[2]);
begin
repeat
a[3]:=random(16)+1
until
(a[3]<>a[2]) and (a[3]<>a[1]);
btn[3].Caption:=inttostr(a[3]);
begin
repeat
a[4]:=random(16)+1
until
(a[4]<>a[2]) and (a[4]<>a[1]) and (a[4]<>a[3]);
btn[4].Caption:=inttostr(a[4]);
begin
repeat
a[5]:=random(16)+1
until
(a[5]<>a[2]) and (a[5]<>a[1]) and (a[5]<>a[3]) and (a[5]<>a[4]);
btn[5].Caption:=inttostr(a[5]);
begin
repeat
a[6]:=random(16)+1
until
(a[6]<>a[1]) and (a[6]<>a[2]) and (a[6]<>a[3]) and (a[6]<>a[4])
and (a[6]<>a[5]);
btn[6].Caption:=inttostr(a[6]);
begin
repeat
a[7]:=random(16)+1
until
(a[7]<>a[1]) and (a[7]<>a[2]) and (a[7]<>a[3]) and
(a[7]<>a[4]) and (a[7]<>a[5]) and (a[7]<>a[6]);
btn[7].Caption:=inttostr(a[7]);
begin
repeat
a[8]:=random(16)+1
until
(a[8]<>a[1]) and (a[8]<>a[2]) and (a[8]<>a[3]) and
(a[8]<>a[4]) and (a[8]<>a[5]) and (a[8]<>a[6]) and (a[8]<>a[7]);
btn[8].Caption:=inttostr(a[8]);
begin
repeat
a[9]:=random(16)+1
until
(a[9]<>a[1]) and (a[9]<>a[2]) and (a[9]<>a[3]) and (a[9]<>a[4]) and
(a[9]<>a[5]) and (a[9]<>a[6]) and (a[9]<>a[7]) and (a[9]<>a[8]);
btn[9].Caption:=inttostr(a[9]);
...
...
...
begin
repeat
a[14]:=random(16)+1
until
(a[14]<>a[1]) and (a[14]<>a[2]) and (a[14]<>a[3])
and (a[14]<>a[4]) and (a[14]<>a[6]) and
(a[14]<>a[7]) and (a[14]<>a[5]) and (a[14]<>a[9])
and (a[14]<>a[8]) and (a[14]<>a[10]) and
(a[14]<>a[11]) and (a[14]<>a[12]) and (a[14]<>a[13]);
btn[14].Caption:=inttostr(a[14]);
begin
repeat
a[15]:=random(16)+1
until
(a[15]<>a[1]) and (a[15]<>a[2]) and (a[15]<>a[3]) and
(a[15]<>a[4]) and (a[15]<>a[6]) and (a[15]<>a[7]) and
(a[15]<>a[5]) and (a[15]<>a[9]) and (a[15]<>a[8]) and
(a[15]<>a[10]) and (a[15]<>a[11]) and (a[15]<>a[12])
and (a[15]<>a[13]) and (a[15]<>a[14]);
btn[15].Caption:=inttostr(a[15]);
begin
repeat
a[16]:=random(16)+1
until
(a[16]<>a[1]) and (a[16]<>a[2]) and (a[16]<>a[3]) and
(a[16]<>a[4]) and (a[16]<>a[6]) and (a[16]<>a[7]) and
(a[16]<>a[5]) and (a[16]<>a[9]) and (a[16]<>a[8]) and
(a[16]<>a[10]) and (a[16]<>a[11]) and (a[16]<>a[12])
and (a[16]<>a[13]) and (a[16]<>a[14]) and (a[16]<>a[15]);
btn[16].Caption:=inttostr(a[16]);
timer3.Enabled:=true;
end; end; end; end; end; end; end; end; end;
end; end; end; end; end; end; end;
Это у меня однокурсник писал пятнашки(данная процедура заполняет массив неповторяющимися числами от одного пятнадцати), и не лень же ему было...
Lure Of Chaos 14.10.2011 19:56 # 0
suc-daniil 14.10.2011 20:00 # −1
Lure Of Chaos 14.10.2011 20:02 # +3
да ладно? не проще ли заполнить массив числами от 1 до 15, а затем перемешать?
SmackMyBitchUp 14.10.2011 20:20 # +6
greno 31.10.2011 20:25 # 0
krypt 01.11.2011 17:52 # +1
Я делал как-то так:
for (int i = 0; i < count; i++)
{
r = rand(count);
swap(i, r);
}
Алгоритм, проверенный временем, так сказать. Другой вопрос, что просто чистым рандомом нельзя пятнашки генерить - не все сочитания решаемы.
bugmenot 01.11.2011 19:03 # +5
размищения
krypt 01.11.2011 19:37 # −2
guest 15.10.2011 05:29 # +4
guest 25.10.2011 19:15 # 0
akaDElpher 15.10.2011 09:14 # 0
И все таки он страшно не читаемый. Скобочки приятней.
SmackMyBitchUp 15.10.2011 11:11 # 0
TheHamstertamer 15.10.2011 11:19 # +8
end; end; end; end; end; end; end;
На пайтоне в ноль строчек
Lure Of Chaos 15.10.2011 14:33 # +13
TarasB 17.10.2011 21:45 # −1
C говно, потому что на нём можно написать
};};};}; итд
Лисп говно, потому что на нём можно написать
))))))))
Питон говно, потому что на нём можно написать
roman-kashitsyn 17.10.2011 21:48 # +4
> ))))))))
fixed
в остальном всё верно
ohlol 17.10.2011 21:57 # +1
можно
ну типа того
roman-kashitsyn 17.10.2011 22:20 # 0
ohlol 17.10.2011 22:21 # −1
roman-kashitsyn 17.10.2011 22:36 # 0
Lure Of Chaos 17.10.2011 21:57 # +1
};};};};
}}}}
;;;;
TheHamstertamer 19.10.2011 14:27 # 0
3.14159265 19.10.2011 15:36 # +5
Быдлокодик!
И комитить сразу в репозиторий,
В репозиторий!
Раз словечко, два словечко - будет песенка!
Цикл раз, цикл два - будет лесенка!
d_dev 17.10.2011 07:34 # +2
ohlol 17.10.2011 07:59 # −2
В F#/Python и тд нет всяких скобочек или бегин-эндов. Это whitespace язык. То есть вложенность определяется за счет числа табов\пробелов. С использованием скобочек или бегин-эндов можно написать так, как в данном говнокоде - не читаемо. А необходимость для вложенности использовать сдвиги- вайтспейсы - заставляет и дисциплинирует программиста писать правильно. Этакий принудительный сдвигиватель вложений, как в визуал-бейсике, но только на уровне языка. Ну и вообще писать меньше, так что антииндусская технология.
roman-kashitsyn 17.10.2011 09:32 # +3
Автор увидел проблему: вложенность глубины порядка 15 не помещается на экране. Его гениальным решением было убрать идентацию вообще. Это же проще, чем придумать нормальный алгоритм.
Следовательно проблема всё-же не в языке, а в авторе.
код говно, автор мудак
AnimeGovno-_- 31.10.2011 21:01 # 0
спс, кеп.
Только вот этот язык скрыл от говнокодера правду о его способностях к программированию, а вот васпейс язык, когда код ушел бы за пару экранов, недвусмысленно бы намекнул автору кода, что он мудак.
roman-kashitsyn 17.10.2011 09:35 # +2
Lure Of Chaos 17.10.2011 10:18 # +1
которая, кстати, мне тоже оч не нравится
AnimeGovno-_- 31.10.2011 21:04 # −1
Ты так говоришь, как-будто все равно не расставляешь все эти вайтспейсы в коде, тк есть всякие "скобочки".
А раз ты их все равно расставляешь их, то нафиг "скобочки" нужны тогда?
Lure Of Chaos 31.10.2011 21:20 # 0
AnimeGovno-_- 31.10.2011 21:58 # 0
Не оправдывайся. Ты всерьёз думаешь, что я тебе поверю?
Lure Of Chaos 31.10.2011 22:00 # 0
AnimeGovno-_- 31.10.2011 22:04 # +1
ctm 17.10.2011 11:11 # +2
лесенка на whitespace-языке будет выглядеть не намного лучше.
кстати, конкретно в этом коде эти энды и соответствующие им бегины не нужны.
код очень напоминает индусов - не хватает только a1, a2,... a16 вместо a[...]
d_dev 17.10.2011 12:31 # 0
перепишите эту кучу на F#/Python...
намного красивее стало?
roman-kashitsyn 17.10.2011 12:32 # 0
AnimeGovno-_- 19.10.2011 12:40 # −3
>намного красивее стало?
Станет намного хуже! Уедет код за пару экранов. В этот момент говнокодера осенит и он поймет, что его код - говно. Как видно на дельфах автора не осенило, тк все выглядит более или менее читаемо. Пописав на вайтспейс-языках - сразу бы перестал говнокодить. Они дисциплинируют.
TheHamstertamer 31.10.2011 20:32 # 0
AnimeGovno-_- 31.10.2011 20:55 # +1
Сколько табов? Тота. А есть антиговнокодерские языки, что заставят тебя это сделать, например визуалбейсик через автоматику иде (но там это не помогает) или вайтсейс языки, где сам компилятор заставляет ставить вайтспейсы, иначе не заработает или не скомпилируется.
Конечно, не поставленный вайтспейс - не единственное место, где говнокодер может наговнокодить, к сожалению.
TheHamstertamer 31.10.2011 23:15 # 0
AnimeGovno-_- 01.11.2011 00:13 # −3
Doctor_Who 27.05.2018 01:40 # 0
Отформатировал твой анус, проверь.
guest8 27.05.2018 02:03 # −999
Doctor_Who 27.05.2018 10:47 # 0
roskomgovno 27.05.2018 14:49 # 0
roskomgovno 26.05.2018 22:02 # −1
roman-kashitsyn 15.10.2011 14:58 # +3
SmackMyBitchUp 15.10.2011 15:02 # +1
ctm 17.10.2011 06:28 # 0
Vindicar 15.10.2011 16:16 # +1
Lure Of Chaos 16.10.2011 15:44 # +5
Uhehesh 16.10.2011 17:42 # 0
можно и if'ами
roskomgovno 27.05.2018 12:08 # 0
guest8 27.05.2018 12:17 # −999
roskomgovno 27.05.2018 12:18 # 0
guest8 27.05.2018 12:29 # −999
roskomgovno 27.05.2018 14:21 # 0
надо через впн ходить
3oJIoTou_xyu 27.05.2018 14:27 # 0
roskomgovno 27.05.2018 14:48 # 0
guest8 27.05.2018 15:00 # −999
666_N33D135 27.05.2018 15:46 # 0
Даже холокост заблочили суки...
guest8 27.05.2018 23:15 # −999
suc-daniil 17.10.2011 17:52 # +3
roman-kashitsyn 17.10.2011 18:09 # +11
TarasB 17.10.2011 21:46 # +6
Если с рандомом не повезёт, то число никогда не выпадет такое, какое надо.
Короче, любой алгоритм, где есть
repeat
r := random;
until f(r);
говно.
SmackMyBitchUp 18.10.2011 11:01 # 0
suc-daniil 18.10.2011 20:27 # 0
ctm 19.10.2011 08:09 # 0
другой вопрос, там корректность решения обеспечивается иным способом (от задачи завит), а выход из цикла дополнительно по количеству итераций или таймауту.
ну а тут оно, конечно, не применимо.
TarasB 19.10.2011 12:02 # 0
Я знаю, сам такие применяю, но сейчас я не о них.
roman-kashitsyn 19.10.2011 12:08 # 0
HaskellGovno 30.07.2012 13:16 # 0
666_N33D135 27.05.2018 15:57 # 0
666_N33D135 26.05.2018 18:03 # 0
ХУУУУУЛИИИИ!!!11 ему руки не отрубили!
subaru 26.05.2018 18:08 # 0
666_N33D135 27.05.2018 15:57 # 0
666_N33D135 27.05.2018 15:56 # 0