- 1
- 2
- 3
- 4
THIS:while(true){
if(true)break;
...
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+81
THIS:while(true){
if(true)break;
...
}
fcuk ну как так можно кодить?
+172
char readByffer[102]={0};
std::string dataStrong = readByffer;
+163
if(!defined("USER")){
define("USER", true);
define("EXTRA_ADMIN_COOKIE", '3794y7v387o3');
}else{
return;
}
−180
my $success=0;
my $error=0;
...
my $result_mail=MailUtils::attach_mail(-to=>$share_email,-message=>$message,-subject=>'Новый рецепт',-src_enc => $Cfg::encoding,-attach=>\@att) or die 'no';
unlink($file) if $result_mail;
$error=1 if !$result_mail;
$success=1 if $error==0;
print CGI::redirect($Cfg::url{root}."/woman/recipes/share/?success=$success&error=$error");
Используем две переменных для статуса, видимо, для надёжности
+173
//Функция возвращает номер месяца по названию
function month_to_num ($month) {
if (mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("январь"),"UTF-8") || mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("января"),"UTF-8")) {$num = 1;}
if (mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("февраль"),"UTF-8") || mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("февраля"),"UTF-8")) {$num = 2;}
if (mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("март"),"UTF-8") || mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("марта"),"UTF-8")) {$num = 3;}
if (mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("апрель"),"UTF-8") || mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("апреля"),"UTF-8")) {$num = 4;}
if (mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("май"),"UTF-8") || mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("мая"),"UTF-8")) {$num = 5;}
if (mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("июнь"),"UTF-8") || mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("июня"),"UTF-8")) {$num = 6;}
if (mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("июль"),"UTF-8") || mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("июля"),"UTF-8")) {$num = 7;}
if (mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("август"),"UTF-8") || mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("августа"),"UTF-8")) {$num = 8;}
if (mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("сентябрь"),"UTF-8") || mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("сентября"),"UTF-8")) {$num = 9;}
if (mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("октябрь"),"UTF-8") || mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("октября"),"UTF-8")) {$num = 10;}
if (mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("ноябрь"),"UTF-8") || mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("ноября"),"UTF-8")) {$num = 11;}
if (mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("декабрь"),"UTF-8") || mb_strtolower($month,"UTF-8") == mb_strtolower($this->t("декабря"),"UTF-8")) {$num = 12;}
return $month;
}
+163
//Вставка пробелов в числа более 1000
function por($num) {
if (($num >= 1000 && $num < 10000) || ($num >= 1000000 && $num < 10000000)) {
for ($i=0;$i<=strlen($num);$i++) {
$ret .= mb_substr($num,$i,1);
if ($i%3==0) {
$ret .= ' ';
}
}
}
elseif (($num >= 10000 && $num < 100000) || ($num >= 10000000 && $num < 100000000)) {
for ($i=0;$i<=strlen($num);$i++) {
$ret .= mb_substr($num,$i,1);
if ($i%3==1) {
$ret .= ' ';
}
}
}
elseif (($num >= 100000 && $num < 1000000) || ($num >= 100000000 && $num < 1000000000)) {
for ($i=0;$i<=strlen($num);$i++) {
$ret .= mb_substr($num,$i,1);
if ($i%3==2) {
$ret .= ' ';
}
}
}
else {$ret = $num;}
return $ret;
}
+154
//Фунцкия транслита
function ruslat ($string, $lower=false) {
$string = ereg_replace(" ","_",$string);
$string = ereg_replace("ж","zh",$string);
$string = ereg_replace("ё","yo",$string);
$string = ereg_replace("й","i",$string);
$string = ereg_replace("ю","yu",$string);
$string = ereg_replace("ь","",$string);
$string = ereg_replace("ч","ch",$string);
$string = ereg_replace("щ","sсh",$string);
$string = ereg_replace("ц","c",$string);
$string = ereg_replace("у","u",$string);
$string = ereg_replace("к","k",$string);
$string = ereg_replace("е","je",$string);
$string = ereg_replace("н","n",$string);
$string = ereg_replace("г","g",$string);
$string = ereg_replace("ш","sh",$string);
$string = ereg_replace("з","z",$string);
$string = ereg_replace("х","h",$string);
$string = ereg_replace("ъ","",$string);
$string = ereg_replace("ф","f",$string);
$string = ereg_replace("ы","y",$string);
$string = ereg_replace("в","v",$string);
$string = ereg_replace("а","a",$string);
$string = ereg_replace("п","p",$string);
$string = ereg_replace("р","r",$string);
$string = ereg_replace("о","o",$string);
$string = ereg_replace("л","l",$string);
$string = ereg_replace("д","d",$string);
$string = ereg_replace("э","e",$string);
$string = ereg_replace("я","ja",$string);
$string = ereg_replace("с","s",$string);
$string = ereg_replace("м","m",$string);
$string = ereg_replace("и","i",$string);
$string = ereg_replace("т","t",$string);
$string = ereg_replace("б","b",$string);
$string = ereg_replace("Ё","yo",$string);
$string = ereg_replace("Й","I",$string);
$string = ereg_replace("Ю","YU",$string);
$string = ereg_replace("Ч","CH",$string);
$string = ereg_replace("Ь","",$string);
$string = ereg_replace("Щ","SСH'",$string);
$string = ereg_replace("Ц","C",$string);
$string = ereg_replace("У","U",$string);
$string = ereg_replace("К","K",$string);
$string = ereg_replace("Е","JE",$string);
$string = ereg_replace("Н","N",$string);
$string = ereg_replace("Г","G",$string);
$string = ereg_replace("Ш","SH",$string);
$string = ereg_replace("З","Z",$string);
$string = ereg_replace("Х","H",$string);
$string = ereg_replace("Ъ","",$string);
$string = ereg_replace("Ф","F",$string);
$string = ereg_replace("Ы","Y",$string);
$string = ereg_replace("В","V",$string);
$string = ereg_replace("А","A",$string);
$string = ereg_replace("П","P",$string);
$string = ereg_replace("Р","R",$string);
$string = ereg_replace("О","O",$string);
$string = ereg_replace("Л","L",$string);
$string = ereg_replace("Д","D",$string);
$string = ereg_replace("Ж","Zh",$string);
$string = ereg_replace("Э","E",$string);
$string = ereg_replace("Я","Ja",$string);
$string = ereg_replace("С","S",$string);
$string = ereg_replace("М","M",$string);
$string = ereg_replace("И","I",$string);
$string = ereg_replace("Т","T",$string);
$string = ereg_replace("Б","B",$string);
$string = ereg_replace("'","",$string);
$string = ereg_replace('"','',$string);
$string = ereg_replace('`','',$string);
if ($lower) {$string = mb_strtolower($string, "UTF-8");}
return $string;
}
Нашел в реальном проекте по FTP
+161
//============= 'game' это, собственно, сама игра ==================
void SUPERMARIO::Game()
{
InitForStartGame(0);
//music(NORMAL_MUSIC);
while (GAMECYCLE) //цикл игры
{
//I. построение изображения
MOVEOBJ::TotalAnimatedObject=0;
prMonetsChangePhase();
prPuziri();
prBuildGamePicture();
prShowDebugInfo();
//II. логика игры
BirdsOtSten(); //птички отталкиваются от стен
SkeletonCollect(); //собираем скелетов
prCleverobjRefresh(); //обновляем все у умных объектов
prMarioDeathOnShipah(); //марио гасится на шипах
prForMarioProtected(); //чтобы марио был защищенным
prPrizeCatch(Rick, Prize);//призы не проходят сквозь стенки и марио ловит призы
prBricksNudgePrize(); //кирпичи могут подталкивать призы
prBricksRestore(); //восстанавливаем кирпичи
prTurtleCikAlien(); //черепаха сбивает других чужих
prMonetsTimeEndTimeLiveAndScoreCreate();//надо создать очки когда монетка пропадает
prIfGameOver(); //если конец игры
prBossSalivaDeathMario();// кегли башки гасят марио и не пролетают через стены
prBossSendSaliveAndKeepAtMario();//башка пускает "кегли" и находится вблизи от марио
ArmsKillAlien(); // оружие убивает чужих
prLiftUpDown(); //меняем направление лифта и обновляем его координаты
prMarioDeathOnFlower();//марио гасится на зубастых цветках
prFlowersUpDown(); //поднимаем и опускаем зубастые цветки
MindobjFunctions(Rick, Cleverobj);//различные функции
MindobjFunctions(Rick, CleverAlien);//предусмотренные для Mindobj
prMarioFlyDownCleverobj(); //марио слетает с клевых объектов
prMarioPositionerOnCleverobject();//позиционируем Mario на клевый объект
prMarioRenewXY();//обновляем координаты Mario
//если ноги марио близко к лифту, марио падает
prMarioClammyToLift(); //на лифт и его ускорение приравнять к нулю
prMarioDownsBrickDestroy();//обрушиваем кирпичи под ногами у марио
prArmsCollisionWithWall();//оружие сталкивается со стенами *
prRememberOldMarioCoordinates();//запоминаем старые координаты Mario
prKeyboardProcess(); //обработка НАЖАТИЙ клавиш
GameModesTreat(); //обрабатываем ситуацию загрузки и рестарта уровня режимы игры
if (DoorOpenCounter) DoorOpenCounter--; //чтобы дверь успела открыться
prScrollBricks(); //двигается фон (спрайты воды и огня)
prChangeEffect(); //эффект перехода на другой экран
prShowFPS(); //показать FPS
prSynhronization(); //синхронизируемся (ждем когда таймер станет равным 1)
ShowLevelNumberTimeCounter++;
if (ShowLevelNumberTimeCounter<100)
{
Msg(" УРОВЕНЬ ", 9, MSG_NOUPDATE);
/*if (LevelNumber<40)
{
scr.putNumb(LevelNumber/4+1,1);
scr<< '-';
scr.putNumb(LevelNumber%4+1,1);
}
else
{
scr.putNumb(LevelNumber);
}*/
scr.putNumb(LevelNumber);
}
static int ShowLog=0;
//выводим изображение на экран из DoubleBuffer
if (Keyb[KEY_L] && Keyb[KEY_LEFTCTRL])
{
Keyb^KEY_L;
ShowLog^=1;
}
if (ShowLog)
{
//сжимаем картинку
for(int i=0; i<100; i++)
{
memcpy(scr.DoubleBuffer+i*320, scr.DoubleBuffer+i*2*320,320);
}
scr.rectangle(0,100,320,100,0);
Log.Show();
}
scr.update();
} //конец цикла while
}//конец функции game
Ностальгия...
+163
function getGroupName($numg) {
global $gname;
if (is_file('../sys/groups.php')) {
include ('../sys/groups.php');
}
else {
include ('sys/groups.php');
}
if ($numg==0) {
$gname = $gr['0'];
return $gname;
} else if ($numg==1) {
$gname = $gr['1'];
return $gname;
} else if ($numg==2) {
$gname = $gr['2'];
return $gname;
} else if ($numg==3) {
$gname = $gr['3'];
return $gname;
}
}
+122
public class ASyncFileHashAlgorithm
{
protected HashAlgorithm hashAlgorithm;
protected byte[] hash;
protected bool cancel = false;
protected int bufferSize = 4096;
public delegate void FileHashingProgressHandler (object sender, FileHashingProgressArgs e);
public event FileHashingProgressHandler FileHashingProgress;
public ASyncFileHashAlgorithm(HashAlgorithm hashAlgorithm)
{
this.hashAlgorithm = hashAlgorithm;
}
public byte[] ComputeHash(Stream stream)
{
cancel = false;
hash = null;
int _bufferSize = bufferSize; // this makes it impossible to change the buffer size while computing
byte[] readAheadBuffer, buffer;
int readAheadBytesRead, bytesRead;
long size, totalBytesRead = 0;
size = stream.Length;
readAheadBuffer = new byte[_bufferSize];
readAheadBytesRead = stream.Read(readAheadBuffer, 0, readAheadBuffer.Length);
totalBytesRead += readAheadBytesRead;
do
{
bytesRead = readAheadBytesRead;
buffer = readAheadBuffer;
readAheadBuffer = new byte[_bufferSize];
readAheadBytesRead = stream.Read(readAheadBuffer, 0, readAheadBuffer.Length);
totalBytesRead += readAheadBytesRead;
if (readAheadBytesRead == 0)
hashAlgorithm.TransformFinalBlock(buffer, 0, bytesRead);
else
hashAlgorithm.TransformBlock(buffer, 0, bytesRead, buffer, 0);
FileHashingProgress(this, new FileHashingProgressArgs(totalBytesRead, size));
} while (readAheadBytesRead != 0 && !cancel);
if(cancel)
return hash = null;
return hash = hashAlgorithm.Hash;
}
public int BufferSize
{
get
{ return bufferSize; }
set
{ bufferSize = value; }
}
public byte[] Hash
{
get
{ return hash; }
}
public void Cancel()
{
cancel = true;
}
public override string ToString ()
{
string hex = "";
foreach(byte b in Hash)
hex += b.ToString("x2");
return hex;
}
}
Очень интересная реализация "асинхронного" хэширования.