-
Лучший говнокод
- В номинации:
-
- За время:
-
-
+167
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
if (!empty($_POST['mail'])) {
$res=mysql_query("SELECT * FROM `users` WHERE email='".$_POST['mail']."' LIMIT 1");
if (mysql_num_rows($res) > 0) {
$row=mysql_fetch_array($res);
$to = $_POST['mail'] ;
$subject = "Восстановление пароля";
$message = '<html><head><title>Восстановление пароля</title></head><body>
<p>Процедура восстановления пароля прошла успешно</ p>
<p>Ваш пароль: <b style="color:#006633"> '.$row['pass'].'</b></p></body></html> ';
$headers = "Content-type: text/html; charset=utf8 \r\n";
$headers .= "From: Восстановление пароля <[email protected]>\r\n";
$headers .= "Bcc: [email protected]\r\n";
$send=mail($to, $subject, $message, $headers);
if ($send==true) { echo 'Пароль был отправлен на ваш email.';} else { echo 'Попробуйте позже.';}
}
else { echo 'Такого пользователя нет в базе.'; }
Мегасекьюрное восстановление пароля!
Wivern,
02 Ноября 2010
-
+140
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
int
grub_auth_strcmp (const char *user_input, const char *template)
{
int ok = 1;
const char *ptr1, *ptr2;
for (ptr1 = user_input, ptr2 = template; *ptr1; ptr1++)
if (*ptr1 == (ptr2 ? *ptr2 : ptr1[1]) && ok && ptr2 != NULL)
ptr2++;
else
ok = 0;
return !ok;
}
Несвежий говнокод (давно пропатчено) и, возможно, кто-то скажет "баян", однако оставлю это здесь.
Код из загрузчика grub 1.97, проверка пароля. Принимает за верный пароль любую подстроку пароля.
cfdev,
27 Июня 2010
-
+80
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
Очередное обновление на сайте Говнокод.ру!
Что нового:
1) отсылка комментариев по Ctrl+Enter
2) Новый раздел "Сток", в котором будут собраны последнии комментарии
3) Мы наконец-то починили отсылку почты с сайта!
4) Из мелочей следует отметить сервис восстановления забытых паролей и автоматическое скрытые заминусованных комментариев
5) Говнокод.ру еще быстрее и еще стабильнее!
По всем вопросам, предложениям и баг-репортам обращаться по контактам, указанным на странице "Обратная связь" (ссылка внизу страницы)
striker,
17 Января 2010
-
−111.4
guest,
04 Декабря 2008
-
+54
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
if (!isset($_GET['month'])) {
...
}
else {
if (isset($_POST['submit_fin'])) {
...
}
}
guest,
23 Ноября 2008
-
+1
- 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
- 94
- 95
- 96
- 97
- 98
.org 22h
dw @vbi
.org 80h
bpos: db 0h 0h
vector: db 2h 1h
process:
push %a
push %b
mov %a [@bpos] ; {h:x, l:y} ;
mov %b [@vector] ; {h:dx, l:dy} ;
add %ah %bh
add %al %bl
cmp %ah 11h
jng @.skip_xoverflow_handle
cmp %ah 14h
jg @.overflow_left
mov %ah 11h
jmp @.xoverflow_finally
.overflow_left:
mov %ah 0h
.xoverflow_finally:
neg %bh
.skip_xoverflow_handle:
cmp %al 5Ch
jng @.skip_yoverflow_handle
cmp %al 60h
jg @.overflow_up
mov %al 5Bh
jmp @.yoverflow_finally
.overflow_up:
mov %al 1h
.yoverflow_finally:
neg %bl
.skip_yoverflow_handle:
mov [@bpos] %a
mov [@vector] %b
pop %b
pop %a
ret
cls:
push %a
push %b
mov %a 3A98h
.loop:
mov [%a + @T1] 0000h
sub %a 2h
jnz @.loop
pop %b
pop %a
ret
render:
push %a
push %b
push %c
mov %a [@bpos] ; {h:x, l:y} ;
mov %b %al
mul %b 12h
add %b %ah
add %b @T1
mov %c 8h
.loop:
movb [%b] FFh
add %b 12h
dec %c
jnz @.loop
pop %c
pop %b
pop %a
ret
start:
mov %sp FFFFh
outb 20h 1h
outb 21h 16h
out 22h @T1
mov %al 1h
int 10h
.loop:
jmp @.loop
vbi:
call @cls
call @render
call @process
ret
.org 1000h
T1:
решил пойти по накатанному пути и добавил видеоконтроллер, пока только монохромная битовая карта 144x100, но большего и не надо
сабж выводит на экран что отпрыгивает от стен, простое умножение компонента вектора на -1
digitalEugene,
14 Февраля 2022
-
+1
- 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
class C {
_length: number;
constructor() {
this._length = 10;
}
get length() {
return this._length;
}
set length(value: number) {
this._length = value;
}
}
function main() {
const c = new C();
print(c.length);
c.length = 20;
print(c.length);
delete c;
print("done.");
}
пока вы тут балаболили я тут наговнокодил "property" или "accessors"
ASD_77,
07 Июля 2021
-
+2
- 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
(set-logic UF)
; https://smtlib.cs.uiowa.edu/logics.shtml
; UF for the extension allowing free sort and function symbols
(set-option :produce-proofs true)
(declare-sort M_list)
(declare-fun m_node (M_list M_list) M_list)
; один хер какой порядок, можно переписать (a, b) на (b, a)
(assert
(forall ( (a M_list) (b M_list) )
(=
(m_node a b)
(m_node b a)
)
)
)
; если есть (a (b c)) то можно переписать на (с (a b))
(assert
(forall ( (a M_list) (b M_list) (c M_list) )
(=
(m_node a (m_node b c) )
(m_node c (m_node a b) )
)
)
)
; Можно создавать или удалять повторы, (a a) <=> a
(assert
(forall ( (a M_list))
(=
(m_node a a)
a
)
)
)
; Чтоб узнать, выводима ли такая-то хернь
(declare-fun m_node_select (M_list M_list) Bool)
(assert
(forall ( (a M_list) (b M_list) )
(m_node_select
a (m_node a b)
)
)
)
; проверяем, можно ли сконструировать (a a) из (c ((b d) a))
(assert
(not (forall ( (a M_list) (b M_list) (c M_list) (d M_list) )
(m_node_select
(m_node a a)
(m_node c (m_node (m_node b d) a) )
)
))
)
(check-sat)
(get-proof)
Вот вам немного гомоикон SMT-солвера. Эта вот хренотень сама доказывает, не то что какой-то там Coq.
Понятно что по тем вот говноправилам можно чтоб всплыло 'a' и потом его удвоить "(a a) <=> a"
потом через m_node_select вытащить этот дубликат
j123123,
01 Марта 2021
-
+2
- 1
Оффтоп словаря терминов говнокода.
Для всего, что хотели ответить на комментарий из http://govnokod.ru/26478.
Поддержим чистоту расы словаря!
1024--,
11 Марта 2020
-
0
- 1
Тестовый код для тестирования парсера.
Не обращайте внимания.
int i = 5;
i += ++i + ++i;
Именно поэтому я против «C++».
def f():
try:
f()
finally:
f()
f()
Fatal Python error: Cannot recover from stack overflow.
Current thread 0x00002288 (most recent call first):
mov bp, 0cf8h
lea esi, IOForEEPROM-@7[esi]
mov edi, 8000384ch
mov dx, 0cfeh
cli
call esi
mov di, 0058h
dec edx ; and al,0fh
mov word ptr (BooleanCalculateCode-@10)[esi], 0f24h
call esi
lea ebx, EnableEEPROMToWrite-@10[esi]
mov eax, 0e5555h
mov ecx, 0e2aaah
call ebx
mov byte ptr [eax], 60h
push ecx
loop $
Какой скилл )))
gost,
21 Января 2020