- 1
- 2
- 3
- 4
- 5
- 6
- 7
function factorial( n: Integer ): Int64;
begin
if n=0 then Result := 1
else Result := n*factorial(n-1);
end;
factorial(-1); //<--ЗАЦИКЛИВАЕТ
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+146
function factorial( n: Integer ): Int64;
begin
if n=0 then Result := 1
else Result := n*factorial(n-1);
end;
factorial(-1); //<--ЗАЦИКЛИВАЕТ
=D
+147
procedure TForm1.GoBtnClick(Sender: TObject);
BEGIN
If GoBtn.Enabled = false then Exit;
GoBtn.Enabled := false;
// Some code
END;
Вот что бывает, когда не продумаешь весь проект до конца.
+155
procedure TForm1.Image1Click(Sender: TObject);
begin
sPictureName := Label2.Caption;
Form2.Show;
end;
procedure TForm1.Image2Click(Sender: TObject);
begin
sPictureName := Label3.Caption;
Form2.Show;
end;
Знаю конечно что уныло, но по моему делать одну процедуру из-за этого слишком геморройно. С тем же массивом из 2-х элементов хотя бы. Говно ли?
+94
var s:string;
begin
cs.Active:=true; //Коннектимся
if cs.Socket.Connected=true then begin //Если подключились то
memo1.lines.add('Соединение установленно...'); //пишим в memo
end else //в противном случае пишим это
memo1.lines.add('Соединение неустановленно...'); //<--вот это :)
>теперь у формы в событии OnGreate пишим
Это капец....
http://forum.hackforce.ru/thread1685.html#post405879
+154
type
число=ineger;
плюс_число=word;
эконом=shortint;
плюс_эконом=byte;
моар=longint;
граммар=real;
йцукен=char;
йцуукеен=string;
холивар=boolean;
+126
uses
crt;
var
chasov,
minutov,
sekundov :byte;
tekushchiy_sekund:word;
begin
clrscr;
write(' chasov ');
read( chasov);
if chasov=9
then
begin
clrscr;
halt;
end;
write(' minutov ');
read( minutov);
write(' sekundov ');
read( sekundov);
clrscr;
for tekushchiy_sekund:=1
to sekundov+60*minutov+3600*chasov do
begin
if keypressed then
if readkey=#27
then halt;
delay(50000);
end;
sound(300);
readkey;
nosound;
end.
УГАДАЙТЕ
+147
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
говно
+98
function Prime (N: longword): boolean;
var
i : longword;
Max : single;
begin
if N = 2
then Prime := true
else if (N <= 1) or (N mod 2 = 0)
then Prime := false
else begin
Prime := true;
i := 3; Max := sqrt(N);
while i <= Max do begin
if N mod i = 0 then begin
Prime := false;
exit
end;
i := i + 2
end
end
end;
var
a, i : longword;
begin
read(a);
for i := 2 to a do
if Prime(i)
then writeln(i, ' is a prime number');
end.
Нахождение простых чисел.
+93
Label 1, 2;
var
M,n:integer;
B:real;
Begin
Read(m,n);
2:
B:=m mod n;
If b=0 then goto 1 else
Begin
M:=n; n:=b;
Goto 2;
End;
1:
Write(n);
End.
Кaк бэ прогрaммноe рeaлизaциё aлгоритмa Евклидa, нaхождeниe мaксимaльного дeлитeля двух чисeл, кaк-то тaк.
+93
if Length(PP.curdir)<36 then
pt:=' '+PP.curdir+' '
else pt:=' \...'+Copy(PP.curdir,Length(PP.curdir)-30,31)+' ';
Ptr:=PP.f_ptr;
if PP.vol='' then PP.vol:='No Label';
WriteString(1,cc+(40-length(pt)) div 2,pt,Pal[8]);
WriteString(22,cc+1+(cc*(34-length(PP.vol))) div 40,'['+PP.vol+']',Pal[7]);
if PP.vol='No Label' then PP.vol:='';
{if PP.empty then exit;}
inc(ptr,sizeof(filrec)*row);
for i:=row to n+row do begin
if (i <PP.files) and (not PP.empty) then begin fname:=ptr^.filename;
{if (ptr^.fileattr and 16) = 0 then StrLwr(fname);}
if (Ptr^.fileattr and 2) <> 0 then fname[1]:=upcase(fname[1]);
if ((Ptr^.fileattr and Hidden) <> 0) and (Pos('.',Fname)>0) then fname[Pos('.',Fname)+1]:=upcase(fname[Pos('.',Fname)+1]);
SortFIle(fname);
for a := length(fname) to 11 do fname:=fname+' ';
fname:=fname+'│';
if (Ptr^.fileattr and 16) = 0 then Str(Ptr^.filesize:10,pt)
else if fname[1]='.' then pt:='UP──-DIR'
else pt:='SUB─-DIR';
fname:=fname+pt+'│';
DateTimeCnv(pt,Ptr^.filedttm);
fname:=fname+pt; {SetFattr}
if Ptr^.selected then WriteString(2+i-row,cc,fname,Pal[1]) else
WriteString(2+i-row,cc,fname,Pal[2]);
inc(ptr,sizeof(filrec));
end
else WriteString(2+i-row,cc,' │ │ │ ',Pal[1]);
end;
end;
procedure Put_File(PP:Panel;cc,row,x:word;active:boolean);
var
fname,pt:string;
{ptr:P_filrec;}
begin
if PP.empty then exit;
ptr:=PP.F_ptr;
inc(ptr,sizeof(filrec)*(row+x));
fname:=ptr^.filename;
{if (ptr^.fileattr and 16) = 0 then StrLwr(fname);}
if (Ptr^.fileattr and 2) <> 0 then fname[1]:=upcase(fname[1]);
if ((Ptr^.fileattr and Hidden) <> 0) and (Pos('.',Fname)>0) then fname[Pos('.',Fname)+1]:=upcase(fname[Pos('.',Fname)+1]);
SortFile(fname);
for a := length(fname) to 11 do fname:=fname+' ';
fname:=fname+'│';
if (Ptr^.fileattr and 16) = 0 then Str(Ptr^.filesize:10,pt)
else if fname[1]='.' then pt:='UP──-DIR'
else pt:='SUB─-DIR';
fname:=fname+pt+'│';
DateTimeCnv(pt,Ptr^.filedttm);
fname:=fname+pt;
if active then If Ptr^.selected then WriteString(2+x,cc,fname,Pal[3]) else
WriteString(2+x,cc,fname,Pal[4])
else if Ptr^.selected then WriteString(2+x,cc,fname,Pal[1]) else
WriteString(2+x,cc,fname,Pal[2])
Файловый менеджер по-типу NC. Pascal, 7-ой класс школы. Участок формирования одной из панелей.
PS: Вообще, это даже как-то работало: http://habrastorage.org/storage1/84736ecc/b4711597/5b1d2618/5b60c662.png