- 1
- 2
- 3
- 4
- 5
- 6
<?$APPLICATION->IncludeComponent("bitrix:system.auth.form","",Array(
"REGISTER_URL" => "register.php",
"PROFILE_URL" => "profile.php"
"SHOW_ERRORS" => "Y"
)
);?>
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+146
<?$APPLICATION->IncludeComponent("bitrix:system.auth.form","",Array(
"REGISTER_URL" => "register.php",
"PROFILE_URL" => "profile.php"
"SHOW_ERRORS" => "Y"
)
);?>
Этот код из официальной документации Битрикса.
Обратите внимание перечисление в массиве.
Ох уж этот удивительный Битрискс... xD
+106
procedure FirstStep (var Text: string);
// Удаление комментариев <!--...-->, переводов строк, раскрытие тегов <br>, удаление парных пробелов:
var
P: Integer;
State: Integer;
Idx: Integer;
Cnt: Integer;
NL: Boolean;
begin
State := 0;
P := 1;
NL := True;
while P <= Length (Text) do
begin
if Text[P] in [#9,#10,#13] then Text[P] := ' ';
case State of
0: case Text[P] of
'<': State := 1;
' ': begin
Idx := P;
State := 9;
end; { }
else NL := False;
end; {case}
1: case Text[P] of
'!': State := 2;
'b': State := 7;
else
begin
Dec (P);
State := 10;
end; {else}
end; {case}
2: if Text[P] <> '-' then
begin
Dec (P);
State := 10;
end else State := 3;
3: if Text[P] = '-' then
begin
Idx := P - 3;
State := 4;
end else
begin
Dec (P);
State := 10;
end; {if}
4: if Text[P] = '-' then State := 5;
5: if Text[P] = '-' then State := 6 else State := 4;
6: if Text[P] = '>' then
begin
Delete (Text, Idx, P - Idx + 1);
P := Idx - 1;
while (P >= 1) and (Text[P] = ' ') do Dec (P);
State := 0;
end else State := 4;
7: if Text[P] = 'r' then State := 8 else State := 0;
8: begin
if Text[P] = '>' then
begin
Text[P-3] := #13;
Text[P-2] := #10;
Delete (Text, P - 1, 2);
Dec (P, 2);
NL := True;
end; {if}
State := 0;
end; {8}
9: if Text[P] <> ' ' then
begin
Cnt := P - Idx;
if NL then
begin
Delete (Text, Idx, Cnt);
Dec (Idx);
end else if Cnt > 1 then Delete (Text, Idx, Cnt - 1);
P := Idx;
State := 0;
end; {if}
10: if Text[P] = '>' then State := 0;
end; {case}
Inc (P);
end; {while}
end; {proc FirstStep}
Кусок парсера HTML.
−110
//Assert.h
#import <Foundation/Foundation.h>
@interface Assert : NSObject {
}
+(void)that:(BOOL)expr;
@end
//Assert.m
#import "Assert.h"
@implementation Assert
+(void)that:(BOOL)expr{
if (!expr) {
[NSException raise:@"Failed assertion." format:@"something is fundamentally wrong with the universe", nil];
}
}
@end
//Code.m
#import "Assert.h"
int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
[Assert that:((6 * 9) == 42)];
...
[pool drain];
return 0;
}
+168
if(x>=900&&x<1000)
{
std::cout<<"DCCCC";
if(x==901)
std::cout<<"I";
else if(x==902)
std::cout<<"II";
else if(x==903)
std::cout<<"III";
else if(x==904)
std::cout<<"IV";
else if(x==905)
std::cout<<"V";
else if(x==906)
std::cout<<"VI";
else if(x==907)
std::cout<<"VII";
else if(x==908)
std::cout<<"VIII";
else if(x==909)
std::cout<<"IX";
if(x==910)
{
std::cout<<"X";
if(x==911)
std::cout<<"I";
else if(x==912)
std::cout<<"II";
else if(x==913)
std::cout<<"III";
else if(x==914)
std::cout<<"IV";
else if(x==915)
std::cout<<"V";
else if(x==916)
std::cout<<"VI";
else if(x==917)
std::cout<<"VII";
else if(x==918)
std::cout<<"VIII";
else if(x==919)
std::cout<<"IX";
}
else if(x==920)
{
std::cout<<"XX";
if(x==921)
std::cout<<"I";
else if(x==922)
std::cout<<"II";
else if(x==923)
std::cout<<"III";
else if(x==924)
std::cout<<"IV";
else if(x==925)
std::cout<<"V";
else if(x==926)
std::cout<<"VI";
else if(x==927)
std::cout<<"VII";
else if(x==928)
std::cout<<"VIII";
else if(x==929)
std::cout<<"IX";
}
//
Перевод числа <1000 в римские цифры... Единственное, что пришло в голову с утра, тупо перебор всех значений. Соответственно так весь код. Это полный 3.14здец?
+160
int S;
int A;
int random_integer = (rand()%3);
cout<<"Skolko vsego palochek\n";
cin>>S;
cout<<"Komp zaberaet\n";
S-=random_integer;
cout<<s<<"\n";>>A;
S-=A;
if (S==8) S-=3; cout<<"Komp Zaberaet\n";
if (S==7) S-=2; cout<<"Komp Zaberaet\n";
if (S==6) S-=1; cout<<"Komp Zaberaet\n";
if (S==4) S-=3; cout<<"Komp Zaberaet\n";
if (S==3) S-=2; cout<<"Komp Zaberaet\n";
if (S==2) S-=1; cout<<"Komp Zaberaet\n";
else
if (A==1) S-=3; cout<<"Komp Zaberaet\n";
if (A==2) S-=2; cout<<"Komp Zaberaet\n";
if (A==3) S-=1; cout<<"Komp Zaberaet\n";
cout<<s<<"\n";>>A;
if (S<=0) cout<<"Vu proigrali\n";
if (A!=3 && A!=2 && A!=1) cout<<"Mogno tolko ot 1-3 palochek\n";
Вот такой суровый говнокод я встретил в одном из вопросов ВиО. То что код не рабочий и так понятно.
+160
<?php
{
$iter = 10000; //количество итераций
$Xmax = array(1,1); //верхние границы
$Xmin = array(-1,-1); //нижние границы
$F = 'cos($x[0])*cos($x[1])'; //подынтегральное выражение
$F2 = '$x[0]+5-sin($x[1])>=2'; //выражение, определяющее границы функции (если такового нет, впишите 0)
}
$U = count($Xmin); //кратность интеграла
$Xint = array();
$x = array();
$SumH = 0;
for ($i = 0; $i <= $U; $i++)
{
$Xint[$i] = $Xmax[$i] - $Xmin[$i];
}
for ($j = 1; $j <= $iter; $j++)
{
for ($i = 0; $i <= $U; $i++)
{
$x[$i] = $Xmin[$i] + lcg_value() * $Xint[$i];
}
eval ("\$F1 = $F2;"); //левая часть выражения, определяющего границы функции
if ($F1 !== 0)
{
$InInt = false;
if ($F1) $InInt = true;
if (!$InInt) continue;
}
eval ("\$F3 = $F;");
$SumH += abs($F3);
}
$rez = 1;
for ($i = 0; $i <= $U-1; $i++)
{
$rez = $rez*$Xint[$i];
}
$rez = ($SumH*$rez)/ $iter;
echo ("Answer: $rez");
?>
Программа, считающая интегралы
+136
#if 0
// memory allocator
// Type: Best Fit with block sorting
#else
static char* last = (char*)KERNEL_HEAP_BEGIN;
void* alloc( size_t size )
{
void * mem = last;
last += size;
return mem;
}
void free( void* mem )
{
(void)mem;
}
#endif
Менеджер памяти.
такую заглушку пришлось делать за пару ночей до сдачи диплома, так как не хватало времени на написание записки.
зато самый быстрый алокатор. сложность О(1)...
нужен был для выделения памяти для данных 2 потоков и 1 процесса... функция free нигде не использовалась...
−226
def factorial(x):
""" Work out x! (with a little help from the google calculator...) """
import re
import urllib
import time
time.sleep(2)
class AppURLopener(urllib.FancyURLopener):
def __init__(self, *args):
# *Cough* *Cough*
self.version = 'Mozilla 1.3'
urllib.FancyURLopener.__init__(self, *args)
opener = AppURLopener()
page = opener.open('http://www.google.com/search?q=%d!' % x).read()
result = re.findall('<b>%d ! = (.*?)</b>' % x, page)
if result:
return int(result[0].replace('<font size=-2> </font>', ''))
else:
raise Exception, "Google not willing today!:\n\n %s" % page
Вычисление факториала!
+153
bool ChatHandler::HandleNpcYellCommand(const char* args)
{
if (!*args)
return false;
...
}
+120
public static bool GetUpperBit(long number)
{
return number < 0;
}
Да это не ГК, но остроумный способ получить верхний бит числа.