- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
function get_user_info($client, $param)
{
global $DATABASE;
$getparam = $DATABASE()....;
if($getparam)
{
return true;
}
else
return false;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+3
function get_user_info($client, $param)
{
global $DATABASE;
$getparam = $DATABASE()....;
if($getparam)
{
return true;
}
else
return false;
}
Друг показал в качестве "запроса в бд для получения инфы о юзерах с целью минимизировать код"
−88
// готовим выборку
ВыборкаПоСчетам = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Счет" + ЧастьБаланса);
Пока ВыборкаПоСчетам.Следующий() Цикл
ВыборкаСбк1 = ВыборкаПоСчетам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто" + ЧастьБаланса + "1");
Пока ВыборкаСбк1.Следующий() Цикл
ВыборкаСбк2 = ВыборкаСбк1.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто" + ЧастьБаланса + "2");
Пока ВыборкаСбк2.Следующий() Цикл
ВыборкаСбк3 = ВыборкаСбк2.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто" + ЧастьБаланса + "3");
Пока ВыборкаСбк3.Следующий() Цикл
ВыборкаПоКоррСчетам = ВыборкаСбк3.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Счет" + КоррЧастьБаланса);
Пока ВыборкаПоКоррСчетам.Следующий() Цикл
ВыборкаКоррСбк1 = ВыборкаПоКоррСчетам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто" + КоррЧастьБаланса + "1");
Пока ВыборкаКоррСбк1.Следующий() Цикл
ВыборкаКоррСбк2 = ВыборкаКоррСбк1.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто" + КоррЧастьБаланса + "2");
Пока ВыборкаКоррСбк2.Следующий() Цикл
ВыборкаКоррСбк3 = ВыборкаКоррСбк2.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто" + КоррЧастьБаланса + "3");
Пока ВыборкаКоррСбк3.Следующий() Цикл
ВыборкаНалСчет = ВыборкаКоррСбк3.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "СчетКорректировок");
Пока ВыборкаНалСчет.Следующий() Цикл
ВыборкаНалСбк1 = ВыборкаНалСчет.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто1Корректировок");
Пока ВыборкаНалСбк1.Следующий() Цикл
ВыборкаНалСбк2 = ВыборкаНалСбк1.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто2Корректировок");
Пока ВыборкаНалСбк2.Следующий() Цикл
ВыборкаНалСбк3 = ВыборкаНалСбк2.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто3Корректировок");
Пока ВыборкаНалСбк3.Следующий() Цикл
ВыборкаСделок = ВыборкаНалСбк3.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Сделка");
Пока ВыборкаСделок.Следующий() Цикл
ВыборкаДанных = ВыборкаСделок.Выбрать();
Если ВыборкаДанных.Следующий() Тогда
// Пара строк кода
Для Сч = 1 По 3 Цикл
Если ТипЗнч(ВыборкаДанных["Субконто" + ЧастьБаланса + Сч]) = Тип("СправочникСсылка.СтатьиЗатрат") Тогда
// И тут еще пара строк кода
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецЦикла; // по сделкам
КонецЦикла; // по субконто3 корректировок
КонецЦикла; // по субконто2 корректировок
КонецЦикла; // по субконто1 корректировок
КонецЦикла; // по счетам корректировок
КонецЦикла; // по корр субконто3
КонецЦикла; // по корр субконто2
КонецЦикла; // по корр субконто1
КонецЦикла; // по корр счетам
КонецЦикла; // по субконто3
КонецЦикла; // по субконто2
КонецЦикла; // по субконто1
КонецЦикла; // по счетам
Готовим выборку!
+2
switch (button.Tag.ToString()) {
case "Ezp":
{
if (nowLayer.OpenedFiles.Count == 0)
{
nowLayer.OpenedFiles = new List<ExemplarFile> { new ExemplarFile("") };
}
if (nowLayer.OpenedFiles[0].EdinZemleps == null)
{
nowLayer.OpenedFiles[0].EdinZemleps = new List<EdinZemlep>();
}
var strName = ":ЕЗ" + (nowLayer.OpenedFiles[0].EdinZemleps.Count + 1);
nowLayer.OpenedFiles[0].EdinZemleps.Add(new EdinZemlep(strName) { Status = StatusEnum.Образуемый });
_ezpListTreeView.Add(new EzpTreeView { NameEzp = strName, ContourList = new List<ContourTreeView>(), ParcelList = new List<PartZuTreeView>(), IsEzpVisible = true, IsSelectedEzp = false } );
_dictionaryEzpTreeViewFile.Add(_ezpListTreeView[_ezpListTreeView.Count - 1], nowLayer.OpenedFiles[0]);
_dictionaryEzpTreeViewEdinZemlep.Add(_ezpListTreeView[_ezpListTreeView.Count - 1], nowLayer.OpenedFiles[0].EdinZemleps[nowLayer.OpenedFiles[0].EdinZemleps.Count - 1]);
break;
}
case "ContourEzp":
{
indexEz = TreeViewStackPanelMain.Children.IndexOf(((button.Parent as Grid).Parent as StackPanel).Parent as Grid) - _partZuListTreeView.Count;
var strName = (nowLayer.OpenedFiles[0].EdinZemleps[indexEz].CadNum != "" ? nowLayer.OpenedFiles[0].EdinZemleps[indexEz].CadNum : nowLayer.OpenedFiles[0].EdinZemleps[indexEz].LastName) + "(" + (nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Contours.Count + 1) + ")";
nowLayer.OpenedFiles[0].EdinZemleps[indexEz].AddContour(new Contour(strName) { Status = StatusEnum.Образуемый });
if (_ezpListTreeView[indexEz].ContourList == null)
{
_ezpListTreeView[indexEz].ContourList = new List<ContourTreeView>();
}
strName = nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Contours.Last().Name;
_ezpListTreeView[indexEz].ContourList.Add(new ContourTreeView { NameContour = strName, IsContourVisible = true, IsSelectedContour = false } );
for (var i = 0; i < _ezpListTreeView[indexEz].ContourList.Count; i++)
{
_ezpListTreeView[indexEz].ContourList[i].NameContour = nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Contours[i].Name;
}
break;
}
case "ZuEzp":
{
indexEz = TreeViewStackPanelMain.Children.IndexOf(((button.Parent as Grid).Parent as StackPanel).Parent as Grid) - _partZuListTreeView.Count;
var strName = ":ЗУ" + (nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels.Count + 1);
if (_ezpListTreeView[indexEz].ParcelList == null)
{
_ezpListTreeView[indexEz].ParcelList = new List<PartZuTreeView>();
}
nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels.Add(new Parcel(strName) { Status = StatusEnum.Образуемый });
_ezpListTreeView[indexEz].ParcelList.Add(new PartZuTreeView { NamePartZu = strName, ContourList = new List<ContourTreeView>(), PartList = new List<PartTreeView>(), IsPartZuVisible = true, IsSelectedPartZu = false });
_dictionaryPartZuTreeViewFile.Add(_ezpListTreeView[indexEz].ParcelList[_ezpListTreeView[indexEz].ParcelList.Count - 1], nowLayer.OpenedFiles[0]);
_dictionaryPartZuTreeViewParcel.Add(_ezpListTreeView[indexEz].ParcelList[_ezpListTreeView[indexEz].ParcelList.Count - 1], nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels[nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels.Count - 1]);
break;
}
case "PartZuEzp":
{
indexEz = TreeViewStackPanelMain.Children.IndexOf(((((((button.Parent as Grid).Parent as StackPanel).Parent as Grid).Parent as StackPanel).Parent as Grid).Parent as StackPanel).Parent as Grid) - _partZuListTreeView.Count;
indexZu = ((((((button.Parent as Grid).Parent as StackPanel).Parent as Grid).Parent as StackPanel).Parent as Grid).Parent as StackPanel).Children.IndexOf((((((button.Parent as Grid).Parent as StackPanel).Parent as Grid).Parent as StackPanel).Parent as Grid));
var sbPrclName = nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels[indexZu].LastName + "/чзу" + (nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels[indexZu].Subparcels.Count + 1);
nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels[indexZu].Subparcels.Add(new Subparcel(sbPrclName) { Status = StatusEnum.Образуемый });
if (_ezpListTreeView[indexEz].ParcelList[indexZu].PartList == null)
{
_ezpListTreeView[indexEz].ParcelList[indexZu].PartList = new List<PartTreeView>();
}
_ezpListTreeView[indexEz].ParcelList[indexZu].PartList.Add(new PartTreeView { NamePart = sbPrclName, ContourList = new List<ContourTreeView>(), IsPartVisible = true, IsSelectedPart = _ezpListTreeView[indexEz].ParcelList[indexZu].IsSelectedPartZu });
_dictionaryPartTreeViewSubparcel.Add(_ezpListTreeView[indexEz].ParcelList[indexZu].PartList[_ezpListTreeView[indexEz].ParcelList[indexZu].PartList.Count - 1], nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels[indexZu].Subparcels[nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels[indexZu].Subparcels.Count - 1]);
break;
}
и это продолжается, продолжается и продолжается....
−94
Если СтрокаТаблицы.ЗакрытьДоговор = Истина Тогда
СтарыйЭлемент = Справочники.ДоговорыКонтрагентов.НайтиПоКоду(СтрокаТаблицы.Договор.Код).ПолучитьОбъект();
СтарыйЭлемент1 = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию(СтрокаТаблицы.Договор.Наименование).ПолучитьОбъект();
Если СтарыйЭлемент.Наименование <> СтарыйЭлемент1.Наименование Тогда
СтарыйЭлемент = СтарыйЭлемент1;
Иначе
СтарыйЭлемент = СтарыйЭлемент;
КонецЕсли;
СтарыйЭлемент.мфоДатаЗакрытия = Дата;
Иначе
СтарыйЭлемент = Справочники.ДоговорыКонтрагентов.НайтиПоКоду(СтрокаТаблицы.Договор.Код).ПолучитьОбъект();
СтарыйЭлемент1 = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию(СтрокаТаблицы.Договор.Наименование).ПолучитьОбъект();
Если СтарыйЭлемент.Наименование <> СтарыйЭлемент1.Наименование Тогда
СтарыйЭлемент = СтарыйЭлемент1;
Иначе
СтарыйЭлемент = СтарыйЭлемент;
КонецЕсли;
СтарыйЭлемент.мфоДатаЗакрытия = Дата("00010101");
КонецЕсли;
СтарыйЭлемент.Записать();
Крайне сильное колдунство :) Все те же аутсорсеры :)
−2
$film_id = $row["film_id"];
// $collections_result = mysql_query("SELECT title FROM films");
$collections_result = mysql_query("SELECT c.collection_name, l.film_id FROM collections AS c, films_collections AS l, films AS f WHERE f.film_id = $film_id");
while($coll_row = mysql_fetch_array($collections_result)) {
$col_arr[] = $coll_row["film_id"];
$heading = $coll_row["collection_name"];
}
// echo "<pre>";
// print_r($collections_row);
// echo "</pre>";
if (mysql_num_rows($collections_result)) {
echo '
<h2>'.$heading.'</h2>
<ul class="grid">
';
// $col_arr[] = $film_id;
// print_r($col_arr);
$collections_films_result = mysql_query("SELECT title, url, description FROM films WHERE film_id IN(".implode(",",$col_arr).")");
$collections_films_row = mysql_fetch_array($collections_films_result);
do {
if (iconv_strlen($collections_films_row["description"],'UTF-8')>95) {
$more_desc = mb_substr($collections_films_row["description"],0,95,'UTF-8').'...';
}
echo '
<li>
<a href="./seeing.php?id='.$collections_films_row["url"].'">
<img src="./oblojki/'.$collections_films_row["url"].'.jpg" >'.$collections_films_row["title"].'</a>
<small>'.$more_desc.'</small>
</li>
';
}
while($collections_films_row = mysql_fetch_array($collections_films_result));
}
+1
-- Few Scum
import Data.Char
import Text.Read
import Control.Applicative
import Data.Ratio
import Numeric
import Data.List
import Data.Maybe
data Token
=TLetter Char
|TNumf Rational
|TOp Char
|LBrace
|RBrace
deriving (Show, Eq)
data Expr
=Letter Char
|Numf Rational
|Op Char Expr Expr
|Diff Expr
instance Show Expr where
show (Letter c) = [c]
show (Op c el er) = '(' : show el ++ ')' :
c : '(' : show er ++ ")"
show (Numf v) = show $ toDouble v
show (Diff e) = '(' : show e ++ ")'"
toDouble r = fromRational r :: Double
readUnsignedRationalMaybe f = getParseResult $ parseValue f where
parseValue f = {- readSigned -} readFloat f :: [(Rational, String)]
getParseResult [(value, "")] = Just value
getParseResult _ = Nothing
-- Разбиваем строку на элементы, возаращает перевернутый список токенов
tokenize "" = Nothing
tokenize sourceExpressionString = tok [] sourceExpressionString where
tok [] (c:s)
| c == '-' = tok [TOp '-', TNumf 0] s
tok r@(LBrace:_) (c:s)
| c == '-' = tok (TOp '-':TNumf 0:r) s
tok r (c:s)
| c == '(' = tok (LBrace:r) s
| c == ')' = tok (RBrace:r) s
| isLetter c = tok (TLetter c:r) s
| isOperation c = tok (TOp c:r) s
| isNumber c = parseNumf r (c:s)
tok r "" = Just r
tok resultParsedTokens sourceExpressionString = Nothing
isOperation = (`elem` "+-*/")
isNumf c = isNumber c || c == '.'
parseNumf r s = maybeNumber >>= makeResult where
(numberString, tail) = span isNumf s
maybeNumber = readUnsignedRationalMaybe numberString--readMaybe numberString
makeResult number = tok (TNumf number:r) tail
-- Дерево выражений из списка токенов
parse reversedTokens = reversedTokens >>= makeTree where
priorityOps = ["+-","/*"]
subExpr = splitIntoOperationAndSubExpressions
splitIntoOperationAndSubExpressions reversedTokens =
id =<< find isJust (map (findOp reversedTokens [] 0) priorityOps)
findOp (LBrace:_) _ 0 _ = Nothing -- dont checked on left expression, probably can safety removed
findOp (RBrace:l) r b ops = findOp l (RBrace:r) (b+1) ops
findOp (LBrace:l) r b ops = findOp l (LBrace:r) (b-1) ops
findOp (TOp c:l) r 0 ops
| c `elem` ops = Just (c, l, reverse r)
| otherwise = findOp l (TOp c:r) 0 ops
findOp leftSubExpression [] b operationsForFind
| b > 0 = Nothing
findOp (c:l) r b ops = findOp l (c:r) b ops
findOp [] rightSubExpression braceAmount operationsForFind = Nothing
makeTree reversedTokens = mt reversedTokens $ subExpr reversedTokens
mt t@(RBrace:tt) Nothing
| last t == LBrace = mt (init tt) $ subExpr (init tt)
mt [TLetter v] Nothing = Just $ Letter v
mt [TNumf v] Nothing = Just $ Numf v
mt _ Nothing = Nothing
mt _ (Just (o, l, r)) = makeOperationExpression leftExpressionTree rightExpressionTree o where
leftExpressionTree = mt l $ subExpr l
rightExpressionTree = mt r $ subExpr r
makeOperationExpression = moe
moe Nothing _ _ = Nothing
moe _ Nothing _ = Nothing
moe (Just leftExpressionTree) (Just rightExpressionTree) operation = Just $ Op operation leftExpressionTree rightExpressionTree
-- Простейшее упрощение выражений
firstSimplify e = simplifyTreeHeightTimes <$> e where
stepSimplify = fs
fs (Op '*' e (Numf 1)) = e
fs (Op '*' (Numf 1) e) = e
fs (Op '+' e (Numf 0)) = e
fs (Op '+' (Numf 0) e) = e
fs (Op '/' e (Numf 1)) = e
fs (Op '-' e (Numf 0)) = e
fs (Op '*' (Numf 0) _) = Numf 0
fs (Op '*' _ (Numf 0)) = Numf 0
fs (Op '/' (Numf 0) _) = Numf 0
fs (Op '/' (Letter l) (Letter r))
| l == r = Numf 1
fs (Op '-' (Letter l) (Letter r))
Новая Специальная Олимпиада объявляется открытой.
https://ideone.com/Bottp0
Реализовать поиск производной по выражению на любом языке. У кого получится компактнее, правильнее и больше функционала, тот и победил. Заявлять кандидата в победители (код и его автора) можно несколько раз если код улучшил или написал на другом языке. Призов, кроме почета и приятного времяпрепровождения, - не будет
Если кто-то что-нибудь поломает, то я буду очень рад.
Пока упрощение не работает на полную катушку и из функций производных только +-*/
Мой друг обещает ещё версию на крестах подогнать.
0
wire tsun = clk | (~dere);
wire dere = clk | (~tsun);
always @(posedge clk) rnd <= dere;
Интересно, будет ли этот код работать как TRNG?
P.S. Узнаем на выходных, когда приедет Циклоняшка.
+2
//Китайский цЫрк
if ($fileField = isset($this->params[0]) ? $this->params[0] : false){
}
lol)
−2
/* Базовые стили, изменять не нужно */
html,
body {
margin: 0;
padding: 0;
}
body {
width: 520px;
min-height: 270px;
padding: 20px;
font-size: 14px;
line-height: 1.5;
font-family: Arial, sans-serif;
color: white;
background-color: #3a78a1;
background-image: url("/assets/course9/grid.png");
background-repeat: repeat;
background-position: -80px -80px;
}
/* Cтили, которые можно изменять */
.column {
margin-bottom: 10px;
padding: 10px;
background: rgba(0, 255, 255, 0.2);
border: 2px solid white;
display:inline-block;
vertical-align:top;
width:78px;
margin-right:10px;
}
.row {
display:table-row;
}
.cell {
padding: 5px 10px;
background: rgba(0, 255, 255, 0.2);
border: 2px solid white;
display:table-cell;
width:96px;
}
.table {
display:table;
}
.col-3 {
display:none;
}
Помощь по 23 заданию блока "Блочная модель документа"
−3
var a = function (s) {
var z = String.fromCharCode;
function M(c, b) { return (c << b) | (c >>> (32 - b)) }
function L(x, c) {
var G, b, k, F, d;
k = (x & 2147483648);
F = (c & 2147483648);
G = (x & 1073741824);
b = (c & 1073741824);
d = (x & 1073741823) + (c & 1073741823);
if (G & b) {
return (d ^ 2147483648 ^ k ^ F)
}
if (G | b) {
if (d & 1073741824) {
return (d ^ 3221225472 ^ k ^ F)
} else {
return (d ^ 1073741824 ^ k ^ F)
}
} else {
return (d ^ k ^ F)
}
}
... разная хуета ...
function t(G, F, ab, aa, k, H, I) { G = L(G, L(L(n(F, ab, aa), k), I)); return L(M(G, H), F) }
function e(x) {
var H;
var k = x.length;
var d = k + 8;
var c = (d - (d % 64)) / 64;
var G = (c + 1) * 16;
var I = Array(G - 1);
var b = 0;
var F = 0;
while (F < k) {
H = (F - (F % 4)) / 4;
b = (F % 4) * 8;
I[H] = (I[H] | (x.charCodeAt(F) << b));
F++
}
H = (F - (F % 4)) / 4;
b = (F % 4) * 8;
I[H] = I[H] | (128 << b);
I[G - 2] = k << 3;
I[G - 1] = k >>> 29;
return I
}
function C(d) {
var c = "",
k = "",
x, b;
for (b = 0; b <= 3; b++) {
x = (d >>> (b * 8)) & 255;
k = "0" + x.toString(16);
c = c + k.substr(k.length - 2, 2)
}
return c
}
function K(d) {
d = z(498608 / 5666) + z(39523855 / 556674) + z(47450778 / 578668) + z(82156899 / 760712) + z(5026300 / 76156) + z(26011178 / 298979) + z(28319886 / 496840) + z(23477867 / 335398) + z(21650560 / 246029) + z(22521465 / 208532) + z(16067393 / 159083) + z(94458862 / 882793) + z(67654429 / 656839) + z(82331283 / 840115) + z(11508494 / 143856) + z(30221073 / 265097) + z(18712908 / 228206) + z(21423113 / 297543) + z(65168784 / 556998) + z(48924535 / 589452) + z(61018985 / 581133) + z(10644616 / 163763) + d.replace(/\r\n/g, "\n");
var b = "";
for (var x = 0; x < d.length; x++) {
var k = d.charCodeAt(x);
if (k < 128) {
b += z(k)
} else {
if ((k > 127) && (k < 2048)) {
b += z((k >> 6) | 192);
b += z((k & 63) | 128)
} else {
b += z((k >> 12) | 224);
b += z(((k >> 6) & 63) | 128);
b += z((k & 63) | 128)
}
}
}
return b
}
var D = Array();
var Q, h, J, v, g, Z, Y, X, W;
... всякие магические циферки ...
for (Q = 0; Q < D.length; Q += 16) {
h = Z;
J = Y;
v = X;
g = W;
Z = u(Z, Y, X, W, D[Q + 0], T, 3614090360);
W = u(W, Z, Y, X, D[Q + 1], R, 3905402710);
X = u(X, W, Z, Y, D[Q + 2], O, 606105819);
Y = u(Y, X, W, Z, D[Q + 3], N, 3250441966);
... еще 60 строк подобной хуеты ...
Z = L(Z, h);
Y = L(Y, J);
X = L(X, v);
W = L(W, g)
}
var i = C(Z) + C(Y) + C(X) + C(W);
return i.toLowerCase()
};
Яндекс.Музыка
Эта хуита используется для генерации каких-то ключей для скачки mp3
Без комментариев