- 1
https://i.imgur.com/S0Ti1EO.png
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
https://i.imgur.com/S0Ti1EO.png
Макаки - они везде.
+3
/* удивляюсь логике человека, написавшего это */
//echo $a;
print($a);
+4
StringBuilder errorMessage = new StringBuilder();
int i = 0, j = 0;
bool outcome = true;
double value;
string[] label = new string[] { label1.Text, label2.Text, label4.Text };
textBox1.Text = textBox1.Text.Trim();
textBox2.Text = textBox2.Text.Trim();
textBox3.Text = textBox3.Text.Trim();
foreach (string field in (new string[] { textBox1.Text, textBox2.Text, textBox3.Text }))
{
try
{
if (field.Length == 0)
throw new Exception("отсутствует значение.\n");
if (j == 2)
value = int.Parse(field, NumberStyles.Integer);
else
value = double.Parse(field, NumberStyles.Float);
if (value <= 0)
throw new Exception("значение должно быть строго больше нуля.\n");
if (j == 2)
{
try
{
dateTimePicker1.Value.Date.AddMonths((int)value);
}
catch (Exception)
{
throw new Exception("превышено максимальное значение типа System.DateTime, " + DateTime.MaxValue.ToShortDateString() + ".\n" +
"Срок вклада не может превышать " +
((DateTime.MaxValue.Year - dateTimePicker1.Value.Date.Year) * 12 +
DateTime.MaxValue.Month - dateTimePicker1.Value.Date.Month).ToString() + " мес. " + "от указанной даты оформления, " + dateTimePicker1.Value.Date.ToShortDateString() + ".\n");
}
}
}
catch (Exception e)
{
errorMessage.Append((++i).ToString() + ". " + label[j] + ": ");
switch (e.GetType().ToString())
{
case "System.FormatException":
errorMessage.AppendLine("неверный формат числа.\n");
break;
case "System.OverflowException":
{
if (j < 2)
{
errorMessage.AppendLine("значение не может быть обработано вещественным типом System.Double.");
errorMessage.AppendLine("Значение типа должно быть строго больше нуля, в промежутке (0; " + double.MaxValue.ToString() + "].\n");
}
else
{
errorMessage.AppendLine("значение не может быть обработано целочисленным типом System.Int32.");
errorMessage.AppendLine("Значение типа должно быть строго больше нуля, в промежутке (0; " + int.MaxValue.ToString() + "].\n");
}
break;
}
default:
errorMessage.AppendLine(e.Message);
break;
}
outcome = false;
}
j++;
}
Мастер исключений 80-го уровня.
Хорошо, хоть не по мессаджам их разделяет.
+4
long long int Factorial(long long int m_nValue)
{
long long int result=m_nValue;
long long int result_next;
long long int pc = m_nValue;
do
{
result_next = result*(pc-1);
result = result_next;
pc--;
}while(pc>2);
m_nValue = result;
return m_nValue;
}
http://rosettacode.org/wiki/Factorial#C.2B.2B
+2
f($scope.data.extraFields){
$scope.data.extraFields = $scope.data.extraFields;
}
разбираю сайт после предыдущего разраба
+143
if (strlen($this->post['Name']) >= 3) {
$p = preg_split('/\s+/', $name) + [' ', ' '];
sort($p);
$permutation = [$p[0], $p[1], $p[2], $p[0], $p[1], $p[0], $p[2], $p[1], $p[0]];
$name = join(' ', $permutation);
$list = Model_Students::searchStudentsByName($name, $facultyID, $gradeID, $groupID);
}
С ребятами запилили полнотекстовый поиск фио. Функция из модели — вызов MySQL процедуры.
Реалия простая — MySQL не умеет в split, не умеет в переменное количество параметров, не умеет в нечёткий поиск. Выкручиваемся как можем.
+142
setExpanded : function(val) {
val = val ? true : false;
this._expanded = val;
}
+148
//----Навигация
if ($page != 1) $pervpage = '<a href=?page=1>Первая</a> | <a href=?page='. ($page - 1) .'>Предыдущая</a> | ';
if ($page != $total) $nextpage = ' | <a href=?page='. ($page + 1) .'>Следующая</a> | <a href=?page=' .$total. '>Последняя</a>';
if($page - 5 > 0) $page5left = ' <a href=?page='. ($page - 5) .'>'. ($page - 5) .'</a> | ';
if($page - 4 > 0) $page4left = ' <a href=?page='. ($page - 4) .'>'. ($page - 4) .'</a> | ';
if($page - 3 > 0) $page3left = ' <a href=?page='. ($page - 3) .'>'. ($page - 3) .'</a> | ';
if($page - 2 > 0) $page2left = ' <a href=?page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
if($page - 1 > 0) $page1left = '<a href=?page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';
if($page + 5 <= $total) $page5right = ' | <a href=?page='. ($page + 5) .'>'. ($page + 5) .'</a>';
if($page + 4 <= $total) $page4right = ' | <a href=?page='. ($page + 4) .'>'. ($page + 4) .'</a>';
if($page + 3 <= $total) $page3right = ' | <a href=?page='. ($page + 3) .'>'. ($page + 3) .'</a>';
if($page + 2 <= $total) $page2right = ' | <a href=?page='. ($page + 2) .'>'. ($page + 2) .'</a>';
if($page + 1 <= $total) $page1right = ' | <a href=?page='. ($page + 1) .'>'. ($page + 1) .'</a>';
if ($total > 1)
{
Error_Reporting(E_ALL & ~E_NOTICE);
echo "<div class=\"pstrnav\">";
echo $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$page3right.$page4right.$page5right.$nextpage;
echo "</div>";
}
+142
#include <stdio.h>
#include <stdlib.h>
#include <gb/gb.h>
#include <gb/drawing.h>
#include <rand.h>
#define OBJ_EMPTY 0
#define OBJ_PLAYER 1
#define OBJ_ENEMY 2
void clearscr(void);
void waitbuttona(void);
void initgame(void);
void setcubemem(UINT8 formerx,UINT8 formery);
void enemy(void);
void wingame(void);
int game_field[5][5];
int cube_x = 2;
int cube_y = 3;
int fcx = 0;
int fcy = 0;
UINT8 genenemy = 0;
UINT8 button;
int pointx = 0;
int pointy = 0;
int i = 0;
int u = 0;
int main()
{
initrand(31415);
printf("Running Cube");
waitbuttona();
clearscr();
initgame();
while(1)
{
clearscr();
button = joypad();
fcx = cube_x;
fcy = cube_y;
genenemy = rand();
if(button == J_UP){ cube_x--; setcubemem(fcx,fcy); }
if(button == J_DOWN){ cube_x++; setcubemem(fcx,fcy);}
if(button == J_LEFT){ cube_y--; setcubemem(fcx,fcy);}
if(button == J_RIGHT){ cube_y++; setcubemem(fcx,fcy);}
box(cube_y*20,cube_x*20,cube_y*20+10,cube_x*20+10,M_FILL);
if(genenemy % 4 == 0) enemy();
}
return(0);
}
void clearscr(void)
{
color(WHITE,WHITE,SOLID);
box(0,0,GRAPHICS_WIDTH,GRAPHICS_HEIGHT);
color(BLACK,WHITE,SOLID);
}
void waitbuttona(void)
{
while(1)
{
if(joypad() == J_A) break;
}
}
void setcubemem(UINT8 formerx,UINT8 formery)
{
game_field[formerx][formery] = 0;
game_field[cube_x][cube_y] = OBJ_PLAYER;
}
void initgame(void)
{
game_field[2][3] = OBJ_PLAYER;
}
void enemy(void)
{
initrand(2);
game_field[rand()][rand()] = OBJ_ENEMY;
circle(3*20,1*20,20,1);
if(game_field[cube_x-2][cube_y-2] == OBJ_ENEMY || game_field[cube_x-1][cube_y-1] == OBJ_ENEMY || game_field[cube_x][cube_y] == OBJ_ENEMY || game_field[cube_x+1][cube_y+1] == OBJ_ENEMY || game_field[cube_x+2][cube_y+2] == OBJ_ENEMY)
{
wingame();
}
}
void wingame(void)
{
clearscr();
gotogxy(40,50);
gprintf("You've won!");
delay(1000);
reset();
}
Игра на Gameboy Classic(GBDK,написана мною). Без комментариев.
+142
RECT rect;
GetWindowRect(hWnd, &rect);
int iWidth = rect.right - rect.left;
int iHeight = rect.bottom - rect.top;
Line(hDC, 0, 0, 5000, 0);
Line(hDC, 0, 0, 0, 5000);
Line(hDC, 0, iHeight - 1, iWidth, iHeight - 1);
Line(hDC, iWidth - 1, 0, iWidth - 1, iHeight - 1);
Рисование линий на границе окна.