- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
DirName:=OpenDialog1.FileName;
i:=Length(Dirname);
While (i>0) and(Dirname[i]<>'\') do
begin
i:=i-1;
end;
If Dirname[i]='\' then Dirname:=Copy(Dirname,1,i-1);
Edit1.Text:=DirName;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+110
DirName:=OpenDialog1.FileName;
i:=Length(Dirname);
While (i>0) and(Dirname[i]<>'\') do
begin
i:=i-1;
end;
If Dirname[i]='\' then Dirname:=Copy(Dirname,1,i-1);
Edit1.Text:=DirName;
Для определения директории, выбирается в ней файл, абсолютный путь к которому вырезается до первого найденного слеша
+146
Говно код
form1.open
суперский код правда не работает
+105
function TForm1.CheckGameO: String;
begin
Result := '';
If (A1.Tag = 2) and (A2.Tag = 2) then
Begin
Result := 'A3';
If not CheckPos(Result) then Exit;
End;
If (A1.Tag = 2) and (A3.Tag = 2) then
Begin
Result := 'A2';
If not CheckPos(Result) then Exit;
End;
If (A1.Tag = 2) and (C3.Tag = 2) then
Begin
Result := 'B2';
If not CheckPos(Result) then Exit;
End;
If (A1.Tag = 2) and (B2.Tag = 2) then
Begin
Result := 'C3';
If not CheckPos(Result) then Exit;
End;
If (A1.Tag = 2) and (B1.Tag = 2) then
Begin
Result := 'C1';
If not CheckPos(Result) then Exit;
End;
If (A1.Tag = 2) and (C1.Tag = 2) then
Begin
Result := 'B1';
If not CheckPos(Result) then Exit;
End;
If (B2.Tag = 2) and (C3.Tag = 2) then
Begin
Result := 'A1';
If not CheckPos(Result) then Exit;
End;
If (B2.Tag = 2) and (A2.Tag = 2) then
Begin
Result := 'C2';
If not CheckPos(Result) then Exit;
End;
If (B2.Tag = 2) and (C2.Tag = 2) then
Begin
Result := 'A2';
If not CheckPos(Result) then Exit;
End;
If (B2.Tag = 2) and (C1.Tag = 2) then
Begin
Result := 'A3';
If not CheckPos(Result) then Exit;
End;
If (B2.Tag = 2) and (A3.Tag = 2) then
Begin
Result := 'C1';
If not CheckPos(Result) then Exit;
End;
If (B2.Tag = 2) and (B1.Tag = 2) then
Begin
Result := 'B3';
If not CheckPos(Result) then Exit;
End;
If (B2.Tag = 2) and (B3.Tag = 2) then
Begin
Result := 'B1';
If not CheckPos(Result) then Exit;
End;
If (C3.Tag = 2) and (A3.Tag = 2) then
Begin
Result := 'B3';
If not CheckPos(Result) then Exit;
End;
If (C3.Tag = 2) and (B3.Tag = 2) then
Begin
Result := 'A3';
If not CheckPos(Result) then Exit;
End;
If (C3.Tag = 2) and (C2.Tag = 2) then
Begin
Result := 'C1';
If not CheckPos(Result) then Exit;
End;
...
Кто угадает для чего это предназначалось получит печенье.
+99
begin
repeat
if WSAStartup($101, Data) = SOCKET_ERROR then begin
Writeln('Ошибка в WSAStrtup ' , WSAGetLastError);
Break;
end;
repeat
SetLength(Name, 256);
if GetHostName(@Name[1], 256) = SOCKET_ERROR then begin
WriteLn('Ошибка в GetHostName ', WSAGetLastError);
Break;
end;
HE := GetHostByName(@Name[1]);
if HE = nil then begin
WriteLn('Ошибка в GetHostByName ', WSAGetLastError);
Break;
end;
Write('Your inner IP: ');
WriteLn(inet_ntoa(PInAddr(HE.h_addr_list^)^));
Write('Your inner name: ');
WriteLn(HE.h_name);
repeat
MainSocket := Socket(AF_Inet,Sock_Stream,0);
if MainSocket = SOCKET_ERROR then begin
Writeln('Ошибка в Socket ' , WSAGetLastError);
Break;
end;
//
CloseSocket(MainSocket);
until false;
until false;
WSACleanUp;
until false;
end.
Код, проверяющий все ошибки - он такой, да?
+100
Procedure TForm1.Button1Click(Sender: TObject);
Const
NormText : string = 'АБВГДЕЁЖЗЫИЙКЛМНОПРСТУФХЦЧШЩЬЪЭЮЯ ';
ObeznogText : string = 'А6ВrДЕЁЖ3ЫNµКЛМН0ПРС†YФXЦ4ШЩЬЪЗЮR ';
Var
sText, sBeznogText : String;
i : Integer;
BEGIN
sText := Memo1.Text;
sText := AnsiUpperCase(sText);
sBeznogText := '';
For i := 1 to Length(sText) do
Begin
sBeznogText := sBeznogText + (Copy(ObeznogText, Pos(sText[i], NormText), 1));
If sText[i] = ' ' then
bEgin
Randomize;
Case Random(5) of
1: begin
sBeznogText := sBeznogText + 'ДОСМОТ? ';
End;
3: begin
sBeznogText := sBeznogText + 'РYКN ';
end;
5: begin
sBeznogText := sBeznogText + 'БЕЗНОГ? ';
end;
End;
eNd;
End;
Memo1.Text := sBeznogText;
END;
Автоматическое обезноживание текста. Сплойлер: БЕ3НОГNМ
+103
// Будет св. время - рефакторить данный кусок.
typeArray[0] := (Char(Ord(Value[1])- 1)) + IntToStr(StrToInt(Value[2]) - 1);
typeArray[1] := (Char(Ord(Value[1]) - 1)) + Value[2];
typeArray[2] := (Char(Ord(Value[1]) - 1)) + IntToStr(StrToInt(Value[2]) + 1);
typeArray[3] := Value[1] + IntToStr(StrToInt(Value[2]) - 1);
typeArray[4] := Value[1] + IntToStr(StrToInt(Value[2]) + 1);
typeArray[5] := (Char(Ord(Value[1]) + 1)) + IntToStr(StrToInt(Value[2]) - 1);
typeArray[6] := (Char(Ord(Value[1]) + 1)) + Value[2];
typeArray[7] := (Char(Ord(Value[1]) + 1)) + IntToStr(StrToInt(Value[2]) + 1);
//-------!!!!!!!-----------
Таки у погромистов тоже бывает полшестого!
+90
Uses CRT;
const
a=10;
b=21;
c=30;
Var
max: integer;
Begin
if (a>b) then
if (a>c) then
begin
max:=a;
end
else max:=c;
if (b>a)then
if (b>c)then
max:=b
else
max:=c;
Writeln(max);
if (max mod 5 = 0 ) then
writeln ('Кратное')
else writeln('некратное');
End.
+91
procedure TForm.ButtoClick(Sender: TObject);{не вздумай нажимать на эту конопку, уебок!! тогда проект не будет падать!!}
begin
{blah blah blah}
end;
нашел такой вот коммент в обработчике события 0_о
+99
var
i,c,b,f:integer;
str:string;
procedure TForm1.codir;
begin
b:=1;
f:=1;
c:=length(edit1.Text);
str:=edit1.Text;
repeat
i:=ord(str[f]);
case i of
0:inc(i);
1:inc(i);
2:inc(i);
3:inc(i);
4:inc(i);
5:inc(i);
6:inc(i);
7:inc(i);
8:inc(i);
9:i:=0;
end;
Delete(str, b, 1);
Insert(inttostr(i),str,b);
inc(b);
inc(f);
until b=c;
edit2.Text:=str;
end;
+119
Function F1(z: Byte): Real; {Функция возведения (-1) в степень "к"}
Begin
If z=1
Then F1:=-1
Else F1:=F1(z-1)*-1;
End;
Нашел в лабораторной по вычмату 2-х годичной давности)