- 1
- 2
- 3
- 4
- 5
Для й = 1 По КонДата-НачДата+1 Цикл
ТекДата = НачДата+й-1;
ДокТ.ВыбратьДокументы(ТекДата, ТекДата);
Пока ДокТ.ПолучитьДокумент() = 1 Цикл
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−119.4
Для й = 1 По КонДата-НачДата+1 Цикл
ТекДата = НачДата+й-1;
ДокТ.ВыбратьДокументы(ТекДата, ТекДата);
Пока ДокТ.ПолучитьДокумент() = 1 Цикл
Копаясь в самописной конфе, с которой сейчас работаю, дописываю, и усердно исправляю чей-то быдлокод, временами нахожу просто уникальные творения.
Пожалуй это творение - вершина извращенной фантазии)
Думаю комментарии излишни)) автор перебирает дни, а потом отдельно по каждому дню делает выборку событий
+91.2
{ Длинная арифметика.
[0] - длина числа
[1..1000] - цифры в системе с основанием 10000, записанные в обратном порядке
}
type TLong = array[0..1000] of integer;
procedure Add(A,B:TLong;var C:TLong);
{Здесь идет процедура сложения в столбик - ничего интересного}
procedure MulByShort(A:TLong;B:integer;var C:TLong); {умножение длинного на короткое}
var i:integer;
begin
initByZero(C);{инициализация C нулями}
for i:=1 to B do Add(C,A,C);
end;
Найдено в решении олимпиадной задачи на FreePascal. Обратите внимание на особо остроумный алгоритм умножения: надо же до такого додуматься. Также интересно, чем мотивирована передача массивов по значению.
+82.8
for (int i = 0; i < list.size(); i++) {
SpecialItem item = list.get(i);
if (item != null) {
item = null;
}
}
list.clear();
Неиндийский способ очистить java.util.List от вместимого.
+137.6
for( unsigned int i = 0; i < strlen(str); i++)
{
if ( str[i] == '-')
{
str[i] = '\0';
break;
}
}
'strlen' в условии цикла - это вычисление инварианта в теле цикла.
Вообще этот цикл реально можно заменить одним вызовом 'strchr'
+160.6
if(isset($_POST['add_st']) && $_POST['add_st'] != false && $_POST['add_st'] != '')
{
if($res=mysql_query("select max(ordering) from category3 where category2=".$cat))
{
$ord=mysql_fetch_row($res);
$order=$ord[0]+1;
}
$_POST['add_st'] - из формы с <input type='submit' name='add_st' value='Сохранить' />
Я уж не говорю, что $order можно было сделать одним запросом
+100.3
function rgbagl(r,g,b,a:gldouble):trgbagl;
var
t:trgbagl;
begin
t.r:=r;
t.g:=g;
t.b:=b;
t.a:=a;
rgbagl:=t;
end;
function trgbaintrgbagl(rgba:trgba):trgbagl;
begin
trgbaintrgbagl.r:=rgba.r/255;
trgbaintrgbagl.g:=rgba.g/255;
trgbaintrgbagl.b:=rgba.b/255;
trgbaintrgbagl.a:=rgba.a/255;
end;
function trgbaglintrgba(rgbagl:trgbagl):trgba;
begin
trgbaglintrgba.r:=trunc(rgbagl.r*255);
trgbaglintrgba.g:=trunc(rgbagl.g*255);
trgbaglintrgba.b:=trunc(rgbagl.b*255);
trgbaglintrgba.a:=trunc(rgbagl.a*255);
end;
function trgbaglelmintrgbaelm(elm:gldouble):byte;
begin
trgbaglelmintrgbaelm:=trunc(elm*255);
end;
function trgbaelmintrgbaglelm(elm:byte):gldouble;
begin
trgbaelmintrgbaglelm:=elm/255;
end;
Вот так вот.
+79.1
if (at == null) {
try {
throw new NullPointerException();
}catch (Exception e) {
e.printStackTrace();
throw new NullPointerException();
}
}
проверка корректности полученного аргумента в функции.
хорошо придумано, что бы не вызывать
throw new IllegalArgumentException();
+165
if ($check==0)
{
$query = "SELECT id, title, news, author, date FROM news ORDER BY id DESC LIMIT 10";
}else{
$query = "SELECT id, title, news, author, date FROM news ORDER BY id LIMIT 10";
}
$result = mysql_query($query,$db);
$_count=0;
while($row=mysql_fetch_array($result))
{
$_count++;
}
$result = mysql_query($query,$db);
while($row=mysql_fetch_array($result))
{
...
Считаем кол-во строк в mysql-таблице
+60.9
<a href="game.php?page=buildings&cmd=insert">
<input style='color:#0F0; font-weight: bold'; type='submit' value='bla-bla-bla'>
</a>
Человек ВНЕЗАПНО понял, как сделать рамку вокруг ссылки "как у кнопки".
+65.7
template <class T>
struct SLinkedListNode
{
public:
SLinkedListNode* m_pPrev; ///< Pointer to previous node.
SLinkedListNode* m_pNext; ///< Pointer to next node.
int Initialize();
int Finalize();
};
...
struct SWaiterNode : public SLinkedListNode<SContainerNode>, public SLinkedListNode<SWaiterListNode>
{
...
// container node
struct SContainerNode
{
// no members needed yet (just for masking SLinkedListNode type)
};
// container
struct SContainer
{
public:
SLinkedListNode<SContainerNode>* m_pObjects;
сначала делаем тимплейтный класс, параметр которого никому не нужен, а потом делаем заглушку для этого параметра.
нормально.