- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
...
function (int i=0, int j=0){
if(i>j || j<=i)
{return i;}else
{return j;}
}
...
...
if ((naibolsee==max(i,j)) && (naibolsee!=max(j,i)))
{i=max(i,j);}
else
{j=max(j,i);}
...
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−18.9
...
function (int i=0, int j=0){
if(i>j || j<=i)
{return i;}else
{return j;}
}
...
...
if ((naibolsee==max(i,j)) && (naibolsee!=max(j,i)))
{i=max(i,j);}
else
{j=max(j,i);}
...
это для квантовых компьютеров, не иначе
−45.4
#ifdef WIN32
typedef DWORD (*LPTHREAD_METHOD)(LPVOID pParam);
// Структура параметров для статической функции.
typedef struct STARTUP_PARAM
{
// MSVThread* pClass;
LPTHREAD_METHOD pMethod;
LPVOID pParam;
} *LPSTARTUP_PARAM;
// Функция, которая создает новый поток.
HANDLE StartThread (LPTHREAD_METHOD pMethod, LPVOID pParam=0,
LPDWORD pdwThreadID = NULL,
LPSECURITY_ATTRIBUTES pSecurity = NULL ,
DWORD dwStackSize = 0 ,
DWORD dwFlags = 0);
// Статическая функция, которая запустит метод.
static DWORD StartFunc (LPSTARTUP_PARAM pStartup);
HANDLE StartThread(LPTHREAD_METHOD pMethod, LPVOID pParam,
LPDWORD pdwThreadID /* = NULL */,
LPSECURITY_ATTRIBUTES pSecurity /* = NULL */,
DWORD dwStackSize /* = 0 */,
DWORD dwFlags /* = 0 */)
{
// Создаем структуру и упаковываем данные для статической функции.
LPSTARTUP_PARAM pStartup = new STARTUP_PARAM;
pStartup->pMethod = pMethod;
pStartup->pParam = pParam;
// Создаем новый поток.
return CreateThread(pSecurity, dwStackSize, (LPTHREAD_START_ROUTINE)StartFunc, pStartup, dwFlags, pdwThreadID);
}
// В новом потоке вначале вызывается функция CMyClass::StartFunc(...)
// А она запускает наш метод.
DWORD StartFunc(LPSTARTUP_PARAM pStartup)
{
// Распаковываем данные в новом потоке.
// Получаем указатель на класс и на метод класса.
LPTHREAD_METHOD pMethod = pStartup->pMethod;
LPVOID pParam = pStartup->pParam;
// Запускаем метод класса в новом потоке.
DWORD dwResult = (*pMethod)(pParam);
// Удаляем временные данные и возвращаем код возврата из нового потока.
delete pStartup;
return dwResult;
}
#else
#include "pthread.h"
typedef DWORD (*LPTHREAD_METHOD)(LPVOID pParam);
// Структура параметров для статической функции.
typedef struct STARTUP_PARAM
{
LPTHREAD_METHOD pMethod;
LPVOID pParam;
} *LPSTARTUP_PARAM;
// Статическая функция, которая запустит метод.
static DWORD StartFunc (LPSTARTUP_PARAM pStartup);
// Функция, которая создает новый поток.
HANDLE StartThread(LPTHREAD_METHOD pMethod, LPVOID pParam=0,
LPDWORD pdwThreadID=0 /* = NULL */,
// LPSECURITY_ATTRIBUTES pSecurity /* = NULL */,
// DWORD dwStackSize /* = 0 */,
const pthread_attr_t* dwFlags=0 /* = 0 */)
{
// Создаем новый поток.
pthread_t restrict;
if(pthread_create(&restrict, dwFlags, (void* (*)(void*))pMethod, pParam)) return pdwThreadID;
return 0;
}
#endif
Человек пишет кросплатформенный http-сервер, а заодно свой собсвенный фреймворк. Участок кода с нитями.
−27.4
t1max=0;
i=0;
for(i=0;i<4;i++)
{
t1maxMass[i]=0;
i++;
}
t2max=0;
i=0;
for(i=0;i<4;i++)
{
t2maxMass[i]=0;
i++;
}
t3max=0;
i=0;
for(i=0;i<4;i++)
{
t3maxMass[i]=0;
i++;
}
t1maxM=0;
i=0;
for(i=0;i<4;i++)
{
t1maxMassM[i]=0;
i++;
}
t2maxM=0;
i=0;
for(i=0;i<4;i++)
{
t2maxMassM[i]=0;
i++;
}
t3maxM=0;
i=0;
for(i=0;i<4;i++)
{
t3maxMassM[i]=0;
i++;
}
Человек собирается защитить диплом.
Участок кода
−35.3
bool Update(float dt) // ага, вот так вот жестоко мы постепенно приведём всё к нормальным coding conventions ^_^
{
return update(dt);
}
bool update(float dt) // теперь возвращает true если value изменилось и false если нет
{
//bla-bla-bla
жестокое решение code standart'a
−0.2
// txTextOut выводит текст на заданных координатах
// Часть функции вывода рейтинга
if (rating == 10) txTextOut (620, 0, "Твой рейтинг: 10");
if (rating == 9) txTextOut (620, 0, "Твой рейтинг: 9");
if (rating == 8) txTextOut (620, 0, "Твой рейтинг: 8");
if (rating == 7) txTextOut (620, 0, "Твой рейтинг: 7");
if (rating == 6) txTextOut (620, 0, "Твой рейтинг: 6");
if (rating == 5) txTextOut (620, 0, "Твой рейтинг: 5");
if (rating == 4) txTextOut (620, 0, "Твой рейтинг: 4");
if (rating == 3) txTextOut (620, 0, "Твой рейтинг: 3");
if (rating == 2) txTextOut (620, 0, "Твой рейтинг: 2");
if (rating == 1) txTextOut (620, 0, "Твой рейтинг: 1");
if (rating <= 0) txTextOut (620, 0, "Твой рейтинг: 0");
.....
if (level == 1) Text_First_Level (fon_text_level);
if (level == 2) Text_Second_level (fon_text_level);
if (level == 3) Text_Third_Level (fon_text_level);
if (level == 4) Text_Fourth_level (fon_text_level);
// по этим фрагментам понятно, что switch я ещё не знал))
.....
if (level == 1) Check_exit (&Player_x, &Player_y, 1, 750, 550, &fon, key_on, key_off, arrow_left, arrow_right);
if (level == 2) Check_exit (&Player_x, &Player_y, 2, 250, 350, &fon, key_on, key_off, arrow_left, arrow_right);
if (level == 3) Check_exit (&Player_x, &Player_y, 3, 750, 550, &fon, key_on, key_off, arrow_left, arrow_right);
if (level == 4) Check_exit (&Player_x, &Player_y, 4, 50, 550, &fon, key_on, key_off, arrow_left, arrow_right);
// циклы я знал, хотя это и не заметно)) а вот структуры и массивы - нет
// последние параметры - картинки))
.....
Teleport (&Player_x, &Player_y, 3, 750, 50, 50, &fon, key_on, key_off, arrow_left, arrow_right);
Teleport (&Player_x, &Player_y, 3, 750, 150, 150, &fon, key_on, key_off, arrow_left, arrow_right);
Teleport (&Player_x, &Player_y, 3, 750, 250, 250, &fon, key_on, key_off, arrow_left, arrow_right);
Teleport (&Player_x, &Player_y, 3, 750, 350, 350, &fon, key_on, key_off, arrow_left, arrow_right);
Teleport (&Player_x, &Player_y, 3, 750, 450, 450, &fon, key_on, key_off, arrow_left, arrow_right);
Teleport (&Player_x, &Player_y, 3, 750, 550, 550, &fon, key_on, key_off, arrow_left, arrow_right);
// без комментариев
.....
// вобщем, вся прога примерно такая. Я сам писал её))))
//
Писал такое полгода назад - чувствовал себя абсолютно нормально. Потом я эту игру, конечно, забросил. Но открыл сейчас - чуть не стошнило, честно. Приведу только нескольно фрагментов.
+11.5
//---------------------------------------------------------------------------
int print(int p)
{
int n;
int i;
char c;
clrscr();
Y cprintf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n\r",
201,205,205,205,209,
205,205,205,205,205,205,205,205,205,205,205,205,209,
205,205,205,205,205,205,205,205,205,205,205,205,209,
205,205,205,205,205,205,205,205,205,205,205,205,209,
205,205,205,205,209,
205,205,205,205,205,205,205,205,205,205,205,205,205,209,
205,205,205,205,205,205,205,187);
cprintf("%c %c %c Surname %c Name %c Patronymic %cYear%c Profession %c Wages %c\n\r",
186,252,179,179,179,179,179,179,186);
cprintf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n\r",
199,196,196,196,197,
196,196,196,196,196,196,196,196,196,196,196,196,197,
196,196,196,196,196,196,196,196,196,196,196,196,197,
196,196,196,196,196,196,196,196,196,196,196,196,197,
196,196,196,196,197,
196,196,196,196,196,196,196,196,196,196,196,196,196,197,
196,196,196,196,196,196,196,186);
for(i = 0; i < p; i++)
{
cprintf("%c", 186);
W cprintf("%3i", i +1);
Y cprintf("%c",179);
W cprintf("%12s", rabota[i].fam);
Y cprintf("%c",179);
W cprintf("%12s", rabota[i].name);
Y cprintf("%c",179);
W cprintf("%12s", rabota[i].otch);
Y cprintf("%c",179);
W cprintf("%4i", rabota[i].year);
Y cprintf("%c",179);
W cprintf("%13s", rabota[i].prof);
Y cprintf("%c",179);
W cprintf("%7i", rabota[i].zarpl);
Y cprintf("%c\n\r", 186);
}
cprintf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n\r",
200,205,205,205,207,
205,205,205,205,205,205,205,205,205,205,205,205,207,
205,205,205,205,205,205,205,205,205,205,205,205,207,
205,205,205,205,205,205,205,205,205,205,205,205,207,
205,205,205,205,207,
205,205,205,205,205,205,205,205,205,205,205,205,205,207,
205,205,205,205,205,205,205,188);
W cprintf("Continue Y/N ?");
scanf("%s", &c);
if(c == 'Y' || c == 'y')
return 1;
else
exit(1);
return 0;
}
//---------------------------------------------------------------------------
Графика под DOS это сильно
+48
int print(int *p)
{
int n;
int i;
char c;
clrscr();
Y cprintf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n\r",
201,205,205,205,209,
205,205,205,205,205,205,205,205,205,205,205,205,209,
205,205,205,205,205,205,205,205,205,205,205,205,209,
205,205,205,205,205,205,205,205,205,205,205,205,209,
205,205,205,205,209,
205,205,205,205,205,205,205,205,205,205,205,205,205,209,
205,205,205,205,205,205,205,187);
cprintf("%c %c %c Surname %c Name %c Patronymic %cYear%c Profession %c Wages %c\n\r",
186,252,179,179,179,179,179,179,186);
cprintf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n\r",
199,196,196,196,197,
196,196,196,196,196,196,196,196,196,196,196,196,197,
196,196,196,196,196,196,196,196,196,196,196,196,197,
196,196,196,196,196,196,196,196,196,196,196,196,197,
196,196,196,196,197,
196,196,196,196,196,196,196,196,196,196,196,196,196,197,
196,196,196,196,196,196,196,186);
for(i = 0; i < *p; i++)
{
cprintf("%c", 186);
W cprintf("%3i", i +1);
Y cprintf("%c",179);
W cprintf("%12s", rabota[i].fam);
Y cprintf("%c",179);
W cprintf("%12s", rabota[i].name);
Y cprintf("%c",179);
W cprintf("%12s", rabota[i].otch);
Y cprintf("%c",179);
W cprintf("%4i", rabota[i].year);
Y cprintf("%c",179);
W cprintf("%13s", rabota[i].prof);
Y cprintf("%c",179);
W cprintf("%7i", rabota[i].zarpl);
Y cprintf("%c\n\r", 186);
}
cprintf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n\r",
200,205,205,205,207,
205,205,205,205,205,205,205,205,205,205,205,205,207,
205,205,205,205,205,205,205,205,205,205,205,205,207,
205,205,205,205,205,205,205,205,205,205,205,205,207,
205,205,205,205,207,
205,205,205,205,205,205,205,205,205,205,205,205,205,207,
205,205,205,205,205,205,205,188);
W cprintf("Continue Y/N ?");
scanf("%s", &c);
if(c == 'Y' || c == 'y')
return 1;
else
exit(1);
return 0;
}
бд
+153
TSearchRec sr;
if(FindFirst(Dir+"\\"+mask,iattr,sr)==0)
{
do
{
AnsiString Processes=Dir+"\\"+sr.Name;
//куча кода
AnsiString newName=sr.Name;
//еще код
AnsiString TmpFile=Dir+"\\"+newName;
if(RenameFile(Processes,TmpFile))
{
...
}
{
...
continue;
}
}while(FindNext(sr)==0);
}
И почему программа "виснет"? Это в клиенте платежной системы... Рыдаю... (стр. 19)
+155.8
...
HWND handle=FindWindow(NULL,AnsiString("DPPCommModule").c_str());
...
На тему: "Сделаем наш string еще string'ее". Это в программе, работающей более чем на 100 теминалах...
+137.6
struct X{template<class T>X(T);X g(){X(this->*&X::g);}};
Короткая программа валит MSVC8 при компиляции