- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
@echo off
if exist 3.txt del 3.txt
: begin
if "%1"=="" goto end
echo %1 >> 3.txt
copy 3.txt "%1" >4.txt
shift
goto begin
: end
dir *. /O-S /B
del *.
del 3.txt
del 4.txt
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+129
@echo off
if exist 3.txt del 3.txt
: begin
if "%1"=="" goto end
echo %1 >> 3.txt
copy 3.txt "%1" >4.txt
shift
goto begin
: end
dir *. /O-S /B
del *.
del 3.txt
del 4.txt
Batch файл под DOS, студенческое задание было: написать *.bat файл, который выводит список аргументов в обратном порядке, например, на команду foo.bat qwe sdf fgh ty должен быть ответ ty fgh sdf qwe. Как-то не додумался я прибавлять аргументы в обратном порядке. и придумал, как это сделать средствами бат файла.
+153
bool ChatHandler::HandleNpcYellCommand(const char* args)
{
if (!*args)
return false;
...
}
+98
//это как бы сортировка приоритетов
Try
Prior1:=StrToInt(Edit1.Text);
Prior2:=StrToInt(Edit2.Text);
Prior3:=StrToInt(Edit3.Text);
Prior4:=StrToInt(Edit4.Text);
Prior5:=StrToInt(Edit5.Text);
except
ShowMessage('Íåâåðíî çàäàíû ïðèîðèòåòû'); exit;
end;
min1:=100;
If prior1<min1 then begin min1:=prior1; nmin1:=1; end;
If prior2<min1 then begin min1:=prior2; nmin1:=2; end;
If prior3<min1 then begin min1:=prior3; nmin1:=3; end;
If prior4<min1 then begin min1:=prior4; nmin1:=4; end;
If prior5<min1 then begin min1:=prior5; nmin1:=5; end;
min2:=100;
If (prior1<min2)and(prior1>min1) then begin min2:=prior1; nmin2:=1; end;
If (prior2<min2)and(prior2>min1) then begin min2:=prior2; nmin2:=2; end;
If (prior3<min2)and(prior3>min1) then begin min2:=prior3; nmin2:=3; end;
If (prior4<min2)and(prior4>min1) then begin min2:=prior4; nmin2:=4; end;
If (prior5<min2)and(prior5>min1) then begin min2:=prior5; nmin2:=5; end;
min3:=100;
If (prior1<min3)and(prior1>min2) then begin min3:=prior1; nmin3:=1; end;
If (prior2<min3)and(prior2>min2) then begin min3:=prior2; nmin3:=2; end;
If (prior3<min3)and(prior3>min2) then begin min3:=prior3; nmin3:=3; end;
If (prior4<min3)and(prior4>min2) then begin min3:=prior4; nmin3:=4; end;
If (prior5<min3)and(prior5>min2) then begin min3:=prior5; nmin3:=5; end;
min4:=100;
If (prior1<min4)and(prior1>min3) then begin min4:=prior1; nmin4:=1; end;
If (prior2<min4)and(prior2>min3) then begin min4:=prior2; nmin4:=2; end;
If (prior3<min4)and(prior3>min3) then begin min4:=prior3; nmin4:=3; end;
If (prior4<min4)and(prior4>min3) then begin min4:=prior4; nmin4:=4; end;
If (prior5<min4)and(prior5>min3) then begin min4:=prior5; nmin4:=5; end;
min5:=100;
If (prior1<min5)and(prior1>min4) then begin min5:=prior1; nmin5:=1; end;
If (prior2<min5)and(prior2>min4) then begin min5:=prior2; nmin5:=2; end;
If (prior3<min5)and(prior3>min4) then begin min5:=prior3; nmin5:=3; end;
If (prior4<min5)and(prior4>min4) then begin min5:=prior4; nmin5:=4; end;
If (prior5<min5)and(prior5>min4) then begin min5:=prior5; nmin5:=5; end;
//далее горы подобного кода (где-то 20-30 страниц):
hile t<=60 do begin
Application.ProcessMessages;
t:=t+1;
Sleep(100);
If nmin1=1 then begin
If t-tpi1=t1 then begin
i1:=i1+1;
datetime:=now;
x1:=random(311)/10+29+random(10)/10;
table1.Insert;
table1.FieldByName('znachenie').AsFloat:=x1;
table1.FieldByName('datchik').AsInteger:=1;
table1.FieldByName('oshibka').AsBoolean:=False;
table1.FieldByName('krit').AsBoolean:=False;
table1.FieldByName('DateTime').AsDateTime:=Datetime;
series1.AddXY(i1, x1, '',clred);
if (x1>60)or(x1<30) then
begin
table1.FieldByName('oshibka').AsBoolean:=True;
if (x1>60.5)or(x1<29.5) then begin
table1.FieldByName('krit').AsBoolean:=True;
Label1.Visible:=True;
end;
end;
table1.Post;
tpi1:=t;
end; //end if
end;
If nmin1=2 then begin
If t-tpi2=t2 then begin
i2:=i2+1;
datetime:=now;
x2:=random(211)/10+9+random(10)/10;
table1.Insert;
table1.FieldByName('znachenie').AsFloat:=x2;
table1.FieldByName('datchik').AsInteger:=2;
table1.FieldByName('oshibka').AsBoolean:=False;
table1.FieldByName('krit').AsBoolean:=False;
table1.FieldByName('DateTime').AsDateTime:=Datetime;
series2.AddXY(i2, x2, '',clgreen);
if (x2>30)or(x2<10) then
begin
table1.FieldByName('oshibka').AsBoolean:=True;
if (x2>30.5)or(x2<9.5) then begin
table1.FieldByName('krit').AsBoolean:=True;
Label1.Visible:=True;
end;
end;
table1.Post;
tpi2:=t;
end;
курсовая работа одного студента (идущего на красный диплом, кстати)
−98
<% form_tag(advertiser_creatives_path(@advertiser), :method=>'post' ) do %>
<% content_tag :table, :class => "form-tabular" do %>
<% content_tag :thead do %>
<% content_tag :tr do %>
<% tag :th, :class=>'hide'%>
<% content_tag :th do %>
Concept (optional)
<%end%>
<% content_tag :th do %>
Ad Tag
<%end%>
<% content_tag :th do %>
Click-Through URL
<%end%>
<th/>
<%end%>
<%end%>
<% content_tag :tbody, :id=>'creative_sub_forms' do %>
<% creatives.each_with_index do |creative, index|
next unless creative.new_record?
%>
<% unless creative.errors.empty? %>
<tr class='nowrap'>
<td colspan='3'>
Error:
<% creative.errors.full_messages.each do |msg| %>
<%= msg %><br/>
<%end%>
</td>
</tr>
<%end%>
<%=render :partial => 'creative_fields', :locals => {:index => index, :creative => creative}%>
<%end%>
<%end%>
<tr>
<td colspan='3'><%= link_to_add_creative_fields "Add row" %></td>
</tr>
<%end%>
<br/>
<br/>
<%= submit_tag 'Continue', :class=>'button' %>
<%end%>
Товарищи, заставляйте нубой учить HTML. Ну, или HAML.
+120
public static bool GetUpperBit(long number)
{
return number < 0;
}
Да это не ГК, но остроумный способ получить верхний бит числа.
+170
switch ($_POST['rate']) {
case(-3):
$r=-3;
break;
case(-2):
$r=-2;
break;
case(-1):
$r=-1;
break;
case(0):
$r=0;
break;
case(1):
$r=1;
break;
case(2):
$r=2;
break;
case(3):
$r=3;
break;
}
Валидация значения рейтинга.
+120
///<summary>
/// Перемещение страницы в/из корзины
///</summary>
///<param name="PageID">Идентификатор страницы</param>
///<param name="Direction">Определяет в корзину или из нее перемещать страницу</param>
///<param name="Page">Экземпляр страницы</param>
///<returns></returns>
///<exception cref="Exception"></exception>
public static Exception PageToRecicle(int PageID, int Direction, Page Page)
{
SiteData data = new SiteData("MsSqlConnectionString");
SiteXml xml = new SiteXml();
Exception ee = new Exception();
SitePage page = new SitePage(Page);
if (page.StartPageID == PageID)
{
try
{
throw new Exception(xml.GetXmlResource("adminmenu.ascx", "RemoveStart"));
}
catch (Exception exc)
{
ee = exc;
}
return ee;
}
if (Direction == 0 || !SitePage.HasPageChilds(PageID, false))
{
data.ExecuteStoredProcedure("sPageToRecicle", ref ee, "@PageID", PageID, "@Direction", Direction,
"@UserName", HttpContext.Current.User.Identity.Name);
}
else
{
try
{
throw new Exception(xml.GetXmlResource("adminmenu.ascx", "RemoveError"));
}
catch (Exception exc)
{
ee = exc;
}
}
return ee;
}
Это фрагмент коммерческой CMS между прочим. Если бы автор родился в Спарте, его бы незамедлительно ё*нули об скалы.
+144
switch(true)
{
case tag1: /*тут обработка*/break;
case tag2: /*тут обработка*/break;
case tag3: /*тут обработка*/break;
case tag4: /*тут обработка*/break;
}
Короче это был кусок парсера SGML файла, который в зависимости от встреченного тега выполнял действия. Этот код недословный, привожу чтоб показать как использовалась конструкция switch. На мой взгляд изящный подход =)
+164
/**
* Constructs a URL encoded query string from an array of key/value pairs
*
* @access protected
* @since 2.0
* @param array $array query string key/value pairs
* @return string
*/
protected function _glue( $array )
{
$query_string = '';
foreach( $array as $key => $val ) :
$query_string .= $key . '=' . rawurlencode( $val ) . '&';
endforeach;
return '?' . substr( $query_string, 0, strlen( $query_string )-1 );
}
http://code.google.com/p/php-twitter/
опять велосипеды
+70
public int someGetCountMethod() {
try {
ResultSet rs2 = db.select("call someGetCountMethod('')");
rs2.first();
return rs2.getInt(1);
} catch (Exception ex) {
return 0;
}
}
где-то откапал вот такое