- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
int main()
{
__asm()
{
NOP
}
return 0;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
int main()
{
__asm()
{
NOP
}
return 0;
}
программа делает ничего, но делает
+132
public event ConnectedHandler OnConnected;
.......
lock( OnConnected )
{
if( OnConnected != null )
{
OnConnected( ... );
}
}
Быдломакронабиратели...
+13
CompoundExpression*
CompoundExpression::newBinaryExpression(
BasicBinaryOperation::Type operation,
const Expression *x,
const Expression *y
) {
vector<Expression::const_pointer> params(2);
params[0] = x;
params[1] = y;
// integer power optimization
if (operation == BasicBinaryOperation::POWER) {
if (y->isNumber()) {
Number::const_pointer number_y = dynamic_cast<typeof number_y>(y);
if (number_y != NULL && number_y->isIntegerNumber()) {
IntegerNumber::const_pointer integer_y = dynamic_cast<typeof integer_y>(number_y);
if (integer_y != NULL) {
operation = BasicBinaryOperation::INT_POWER;
return new CompoundExpression(BinaryOperation::getOperation(operation), params);
}
}
}
}
// x^(y/n), where 'n' is odd integer
// transform to '(x^y)^(1/n)'
if (operation == BasicBinaryOperation::POWER) {
if (y->isCompoundExpression()) {
auto compoundExpressionY = dynamic_cast<CompoundExpression::const_pointer>(y);
if (compoundExpressionY != NULL && compoundExpressionY->operation->isBinary()) {
auto innerOperation = compoundExpressionY->operation;
auto binaryOperation = dynamic_cast<BinaryOperation const *>(innerOperation);
if (binaryOperation != NULL && binaryOperation->getType() == BasicBinaryOperation::DIVIDE) {
Expression::const_pointer numerator = compoundExpressionY->params[0];
Expression::const_pointer denominator = compoundExpressionY->params[1];
if (denominator->isNumber()) {
auto numberDenominator = dynamic_cast<Number::const_pointer>(denominator);
if (numberDenominator != NULL && numberDenominator->isIntegerNumber()) {
auto integerDenominator = dynamic_cast<IntegerNumber::const_pointer>(numberDenominator);
if (integerDenominator != NULL && (integerDenominator->intValue() % 2) != 0) {
auto base = CompoundExpression::newBinaryExpression(BasicBinaryOperation::POWER, x, numerator);
return CompoundExpression::newBinaryExpression(BasicBinaryOperation::NTH_ROOT, integerDenominator, base);
}
}
}
}
}
}
}
return new CompoundExpression(BinaryOperation::getOperation(operation), params);
}
Моё. Потребовалось воткнуть оптимизацию арифметического выражения некоторого вида. В результате родился вот такой костыль.
+8
#define I_HATE_MACRO2(BEGIN__, END__) BEGIN__##END__
#define CONCAT_MACRO(BEGIN__, END__) I_HATE_MACRO2(BEGIN__,END__)
+155
// сначала читаем из настроек unix-timestampы дней, в которые начинаются кварталы
// если же не получилось прочитать настройки, берем то, что сгенерим с помощью mktime
// правда, в настройках значения от балды, и в mktime делаются не те даты, поэтому некоторые месяцы считаем не в свой квартал
// но кого это волнует?
$planning_current = Array(
"k1" => COption::GetOptionString("main", "req_planning_k1", mktime(0,0,0,intval(1),1, $_YEAR)),
"k2" => COption::GetOptionString("main", "req_planning_k2", mktime(0,0,0,intval(3),1, $_YEAR)),
"k3" => COption::GetOptionString("main", "req_planning_k3", mktime(0,0,0,intval(6),1, $_YEAR)),
"k4" => COption::GetOptionString("main", "req_planning_k4", mktime(0,0,0,intval(9),1, $_YEAR)),
);
// массивы с порядковыми номерами месяцев квартала
$first_kvartal = array("01","02","03");
$second_kvartal = array("04","05","06");
$third_kvartal = array("07","08","09");
$fourth_kvartal = array("10","11","12");
... // здесь html с шапкой таблицы и началом первой строки
foreach($first_kvartal as $key){ // $key нигде не используется
$c_date = time();
$c_cyc = mktime(0,0,0, date('m',$planning_current['k1']), date('d',$planning_current['k1']), $_YEAR); // год сменить хочу
if($c_cyc < $c_date) { // если квартал уже начался
... // здесь html с ячейкой, в которой заявка текущего месяца показана одним способом
} else {
... // здесь html с ячейкой, в которой заявка текущего месяца показана другим способом
}
}
... // здесь html, завершающий первую строку и начинающий вторую
... // и еще три абсолютно таких же цикла - для второго, третьего и четвертого кварталов
Задача: вывести в таблицу ежемесячные заявки для года $_YEAR, причем каждый квартал в отдельной строке
+118
fib = 0 : 1 : zipWith (+) fib (tail fib)
main = print $ take 700 fib
+138
$sql_ex = array();
if(isset($this->request->get["id"]) && $this->request->get["id"] == '5')
$sql_ex[] = " `ex`.`num` = 5 ";
else
$sql_ex[] = " `ex`.`num` != 5 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '7')
$sql_ex[] = " `ex`.`num` = 7 ";
else
$sql_ex[] = " `ex`.`num` != 7 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '4')
$sql_ex[] = " `ex`.`num` = 4 ";
else
$sql_ex[] = " `ex`.`num` != 4 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '10')
$sql_ex[] = " `ex`.`num` = 10 ";
else
$sql_ex[] = " `ex`.`num` != 10 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '11')
$sql_ex[] = " `ex`.`num` = 11 ";
else
$sql_ex[] = " `ex`.`num` != 11 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '14')
$sql_ex[] = " `ex`.`num` = 14 ";
else
$sql_ex[] = " `ex`.`num` != 14 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '19')
$sql_ex[] = " `ex`.`num` = 19 ";
else
$sql_ex[] = " `ex`.`num` != 19 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '20')
$sql_ex[] = " `ex`.`num` = 20 ";
else
$sql_ex[] = " `ex`.`num` != 20 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '21')
$sql_ex[] = " `ex`.`num` = 21 ";
else
$sql_ex[] = " `ex`.`num` != 21 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '13')
$sql_ex[] = " `ex`.`num` = 13 ";
else
$sql_ex[] = " `ex`.`num` != 13 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '12')
$sql_ex[] = " `ex`.`num` = 12 ";
else
$sql_ex[] = " `ex`.`num` != 12 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '6')
$sql_ex[] = " `ex`.`num` = 6 ";
else
$sql_ex[] = " `ex`.`num` != 6 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '17')
$sql_ex[] = " `ex`.`num` = 17 ";
else
$sql_ex[] = " `ex`.`num` != 17 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '23')
$sql_ex[] = " `ex`.`num` = 23 ";
else
$sql_ex[] = " `ex`.`num` != 23 ";
if(isset($this->request->get["id"]) && $this->request->get["id"] == '16')
$sql_ex[] = " `ex`.`num` = 16 ";
else
$sql_ex[] = " `ex`.`num` != 16 ";
$sql_extra = '';
if (!empty($sql_ex)) $sql_extra = ' AND '.implode(" AND ", $sql_ex);
В начале нужно было одно условие, потом еще и еще и ...
+166
var strLabel = "<label for='yyyy' generated='true' class='error'>Чтобы зарегистрироваться, вам должно быть не менее 00 лет.</label>".replace(/00/gi, ageLimit);
Автор: samsung
+125
<ul class="select"><li><a href="#nogo"><b>Clients</b><!--[if IE 7]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<div class="select_sub">
<ul class="sub">
<li><a href="#nogo">Clients Details 1</a></li>
<li><a href="#nogo">Clients Details 2</a></li>
<li><a href="#nogo">Clients Details 3</a></li>
</ul>
</div>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
</ul>
Год выпуска неизвестен, но попалось сегодня....
−104
Запрос = Новый Запрос;
Запрос.Текст = "
|ВЫБРАТЬ
| ВЫБОР Когда Ном.Ссылка.ЭтоГруппа=Истина Тогда 1 Иначе 0 Конец как этоГруппа,
| 1 как Уровень,
| ВЫБОР Когда Ном.Ссылка.Родитель.Код=""00002"" Тогда """" Иначе Ном.Ссылка.Родитель.Код Конец как кодРодителя,
| Ном.Ссылка.Код как Код,
| Ном.Ссылка.Наименование как Наименование,
| Ном.Ссылка как Элемент
|ИЗ справочник.Номенклатура как Ном";
РЗ = Запрос.Выполнить();
ТЗ = РЗ.Выгрузить();
Сообщить("1. Подготовка таблицы ...");
КК=0;
КМАКС=ТЗ.Количество();
Индикатор1 = ЭлементыФормы.Индикатор;
Индикатор1.МаксимальноеЗначение = ТЗ.Количество();
Индикатор1.Значение = 0;
Для Каждого ТекСтрока ИЗ ТЗ Цикл
Индикатор1.Значение = Индикатор1.Значение + 1;
ОбработкаПрерыванияПользователя();
КК = КК + 1;
Состояние(Формат(КК/КМАКС*100, "ЧЦ=8; ЧДЦ=2"),Цел(КК/КМАКС*100));
ТекСтрока.Уровень = ТекСтрока.Элемент.Уровень()-1;
КонецЦикла;
ТЗ.Сортировать("этоГруппа убыв,Уровень возр,Наименование возр");
Вот такой вот способ получения номенклатуры вместе с иерархией