- 1
https://github.com/ruby/ruby/blob/trunk/parse.y
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
https://github.com/ruby/ruby/blob/trunk/parse.y
Как распарсить Руби код.
0
#include <iostream>
#include <stdio.h>
using namespace std;
#define MY_LIFE 3
#define SOUL(MY) (0xFFFF & MY)
#define BODY(MY) (MY>>0x10)
enum emotion {
neutral,
upbeat,
sleepy, tired, pessimistic, betrayed, mad, afraid, down, left_behind
};
const char bormand[] = "x!( \"@\"!, #(&!$ $\\&!$ %('!$ &T&! 'T& $ !, %0&!$ $X&!$ #$&!$ )$& $ ";
const int p_x = 15;
const int p_y = 10;
unsigned int podushka[p_x * p_y];
unsigned int embrace(const char* a, int i) {
unsigned int x = 0;
for(int j = 0; j<3; ++j)
x += (a[i+j]-0x20)<<(j*6);
return x;
}
void make_love(int x, int y) {
unsigned int my = podushka[x + p_x*y];
int my_soul = SOUL(my);
if (my_soul >= sizeof(bormand) - 3)
return;
int my_happiness = embrace(bormand, my_soul);
int dx = 0;
int dy = 0;
switch(my_happiness & 0xFF) {
case upbeat:
podushka[x + y*p_x] = my_soul + MY_LIFE + ((my_happiness & 0xFFFF00)<<8);
break;
case sleepy:
dx = -1; goto sleep;
case tired:
dx = -1; dy = -1; goto sleep;
case left_behind:
dx = -1; dy = 1; goto sleep;
case mad:
dx = 1; goto sleep;
case betrayed:
dx = 1; dy = -1; goto sleep;
case afraid:
dx = 1; dy = 1; goto sleep;
case pessimistic:
dy = -1; goto sleep;
case down:
dy = 1; goto sleep;
sleep:podushka[(x+dx)%p_x + (y+dy)%p_y*p_x] = BODY(my) ? my - 0x10000 : my_soul + MY_LIFE;
podushka[x + p_x*y] = my_happiness>>8;
break;
default:
return;
}
}
int main(int argc, const char * argv[]) {
//cout<<"Bormand: \"" << bormand << "\"\n";
podushka[8+p_x*9] = 1;
// Test
//print2();
for (int t = 0; t<20; ++t) {
for (int i = 0; i<p_x*p_y; ++i)
make_love(i%p_x, i/p_x);
//cout << "step: "<<t<<endl;
//print2();
}
for (int j = 0; j<p_y; ++j) {
for (int i = 0; i<p_x; ++i) {
auto c = podushka[i+p_x*j];
putchar((c>0x20 && c <0x7e)?(char)c:' ');
}
cout<<endl;
}
return 0;
}
https://ideone.com/NSbHSX
bormand
my love
+3
print for <>
Базовая функциональность программы cat на perl. Кто короче?
(только возможности самого языка без exec и подобных, шеллы вне олимпиады)
0
Как слышно из новостей, сейчас вся Украина замерла в ожидании открытия некой невъебенной национальной социальной сети от какой-то
хитрожопой дамы, решившей попилить бабло на горячей теме. Помпезный лендинг с формой подписки расположен по адресу: http://esvoe.com/
Путём нехитрого перебора доменов первого уровня был установлен адрес тестового сайта: http://esvoe.com.ua/
В общем, использоваться будет готовый говнодвижок "Socialite" (увидеть можно в директории "/public/"), листинг корневых сайтов виден
всем желающим, а при тестировании используются такие нехитрые ники, как "Твоя мамка".
Порядком подзаебла тема "моих", "национальных", "монетизированных" и тому подобных "социальных сетей". Смысла тягаться с "ВКонтакте"
и "Facebook" нет как по причине необоримой узнаваемости данных брендов, так и по причине того, что мощность их дата-центров в охулиарды
раз превышает мощность обоссаного VDS-а за какие-нибудь псят гривенок. Все, очевидно, забыли о быстром взлёте школьной поделки "Друзi"
на nulled-версии "Vii Engine" до уровня в сто тысяч зарегистрированных пользователей и о последующем молниеносном скатывании в кучу
бегемотьего навоза. Также никого ничему не научила история с белорусским клоном "ВКонтакте", "VSeti.By", на который в последние годы
всем было похуй.
А чего стоят дешёвые приманки в стиле "платим рупь за пост"...
0
while($art = $obSection->GetNext()){
for($k=0;$k<=($art['DEPTH_LEVEL']-2);$k++)
// echo "..";
// echo "<h4>Дома серии ".$arGor." в городе ";
// echo $art['NAME'].'</h4>';
$i = 1;
foreach($arResult["HOMES"] as $arHome)
{
if($art["ID"]==$arHome["IBLOCK_SECTION_ID"]){
if($dec=="" || $dec!=$art['NAME']){
echo "<h4>Дома серии ".$arGor." в городе ";
echo $art['NAME'].'</h4>';
echo "<div class=\"korp\">";
$dec = $art['NAME'];
}
echo '<a href="'.$arHome["DETAIL_PAGE_URL"].'">'.$arHome["PROPERTY_KORPUS_VALUE"].'</a>';
if(count($arResult["HOMES"])>$i)
{
echo "<div class=\"last\">, </div>";
}
$i++;
}
}
echo "</div><br>";
}
Глубокомысленный цикл for
0
while exists (
select
C.CONTRAGENT_NAME,
PR.PHONE
from CONTRAGENTS C
inner join CONTRAGENT_PROPERTIES PR on PR.CONTRAGENT_ID = C.CONTRAGENT_ID
except select NAME,PHONE from IMPORT_SOURCE)
begin
declare @IDENTITIES table (CONTRAGENT_ID int)
insert CONTRAGENTS (
CONTRAGENT_NAME,
…)
output inserted.CONTRAGENT_ID into @IDENTITIES
select distinct
NAME,
…
from IMPORT_SOURCE
insert CONTRAGENT_PROPERTIES (
…,
PHONE,
…)
select
…,
S.PHONE
…
from @IDENTITIES I
inner join CONTRAGENTS C on C.CONTRAGENT_ID = I.CONTRAGENT_ID
cross apply (
select top 1
from IMPORT_SOURCE S
left join (
select
C.CONTRAGENT_NAME,
PR.PHONE
from CONTRAGENTS C
inner join CONTRAGENT_PROPERTIES PR on PR.CONTRAGENT_ID = C.CONTRAGENT_ID
) TX on TX.CONTRAGENT_NAME = S.NAME and TX.PHONE = S.PHONE
where TX.CONTRAGENT_NAME is null)
end
Импорт. В источнике за ключевые поля нужно было взять NAME и PHONE, которые в целевой базе — в разных таблицах. Курсоры — слишком долго.
+4
if (preg_match('/'.preg_quote($subString).'/', $string)) {
...
}
Проверка, есть ли подстрока в строке.
Вроде, как минимум несколько лет человек в программировании на PHP.
Показывает опытность тем, что экранирует спецсимволы в регулярном выражении.
А можно было использовать простейшую функцию strpos().
+4
// ...
if (isset($_GET["download"])) {
include "./download.inc.php";
} elseif (isset($_GET["table"])) {
include "./table.inc.php";
} elseif (isset($_GET["schema"])) {
include "./schema.inc.php";
} elseif (isset($_GET["dump"])) {
include "./dump.inc.php";
} elseif (isset($_GET["privileges"])) {
include "./privileges.inc.php";
} elseif (isset($_GET["sql"])) {
include "./sql.inc.php";
} elseif (isset($_GET["edit"])) {
include "./edit.inc.php";
} elseif (isset($_GET["create"])) {
include "./create.inc.php";
} elseif (isset($_GET["indexes"])) {
include "./indexes.inc.php";
} elseif (isset($_GET["database"])) {
include "./database.inc.php";
} elseif (isset($_GET["scheme"])) {
include "./scheme.inc.php";
} elseif (isset($_GET["call"])) {
include "./call.inc.php";
} elseif (isset($_GET["foreign"])) {
include "./foreign.inc.php";
} elseif (isset($_GET["view"])) {
include "./view.inc.php";
} elseif (isset($_GET["event"])) {
include "./event.inc.php";
} elseif (isset($_GET["procedure"])) {
include "./procedure.inc.php";
} elseif (isset($_GET["sequence"])) {
include "./sequence.inc.php";
} elseif (isset($_GET["type"])) {
include "./type.inc.php";
} elseif (isset($_GET["trigger"])) {
include "./trigger.inc.php";
} elseif (isset($_GET["user"])) {
include "./user.inc.php";
} elseif (isset($_GET["processlist"])) {
include "./processlist.inc.php";
} elseif (isset($_GET["select"])) {
include "./select.inc.php";
} elseif (isset($_GET["variables"])) {
include "./variables.inc.php";
} elseif (isset($_GET["script"])) {
include "./script.inc.php";
} else {
include "./db.inc.php";
}
// ...
https://github.com/vrana/adminer/blob/master/adminer/index.php
p.s хотя сама штука полезная, пару раз выручала
0
bool valueToString(std::string_view str, float& value) try {
const auto end = std::numeric_limits<std::size_t>::max();
const float parsed = std::stof(str.data(), &end);
if (end != str.size())
return false;
value = parsed;
return true;
} catch (...) {
return false;
}
string_view пирформанс! Спойлер: да, там std::stof
0
SELECT * FROM order WHERE coalesce(cancelation_date,\'7777-07-07\'::DATE) >= :tdDate