- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
#include <chrono>
#include "SomeShittyLib.h"
// ...
//Fuck you.
#undef min
auto min_seconds = std::chrono::seconds::min();
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+4
#include <chrono>
#include "SomeShittyLib.h"
// ...
//Fuck you.
#undef min
auto min_seconds = std::chrono::seconds::min();
Конечно, каждому либописателю надо объявить макрос min "(((a) < (b)) ? (a) : (b))", ведь вызов функции - это пиздец какие накладные расходы!
+4
std::vector<int> vec = { 1, 2, 3, 4 };
for (auto i = vec.size() - 1; i >= 0; i--) {
cout << i << ": " << vec[i] << endl;
}
cout << endl;
Выстрел в ногу, заботливо прикрытый фиговым листочком «auto».
+8
public float Ratio
{
get { return ratio; }
set
{
float newValue = value;
if (value < 0.002f)
{
newValue = 0.002f;
}
else if (value > 0.983f)
{
newValue = 0.983f;
}
if (ratio != newValue)
{
ratio = value;
InvalidateMeasure();
}
}
}
Мой "любимый" телерик опять пишет говно. Хорошо, что я скачал исходники и теперь сам могу править баги, не дожидаясь реакции этих слоупоков, которые после отправки бага с гифом (!), воспроизводящими исходниками (!!) и, блядь, патчем (!!!) исправляли два месяца сраный NRE.
Догадайтесь, что здесь не так. Про magic numbers уже молчу.
+159
$timeout(function(){
$rootScope.presentation_details = {
"name" : $rootScope.presentationDetails.name,
"description" : $rootScope.presentationDetails.description,
"lastUpdatedView" : $rootScope.presentationDetails.lastUpdatedView,
"projectId" : $rootScope.presentationDetails.projectId,
"presentationId" : $rootScope.presentationDetails.presentationId,
"reimbursementRate" : $rootScope.presentationDetails.reimbursementRate,
"isTemplate" : $rootScope.presentationDetails.isTemplate,
"authorId" : $rootScope.presentationDetails.authorId,
"authorName" : $rootScope.presentationDetails.authorName,
"IsNewPresentation" : false,
"gDocsId" : $rootScope.presentationDetails.gDocsId,
"parameters" : {
"widgetURL" : $rootScope.presentationDetails.parameters.widgetURL,
"widgetIFrameUrl" : $rootScope.presentationDetails.parameters.widgetIFrameUrl,
"widgetTextareaContent": $rootScope.presentationDetails.parameters.widgetTextareaContent,
"widgetTotalEGinGasSaved" : $rootScope.presentationDetails.parameters.widgetTotalEGinGasSaved,
"widgetTotalEGinFewerVehicles" : $rootScope.presentationDetails.parameters.widgetTotalEGinFewerVehicles,
"widgetHowDoesSolarWorkStepFourDuration" : $rootScope.presentationDetails.parameters.widgetHowDoesSolarWorkStepFourDuration,
"widgetHowDoesSolarWorkOverallDuration" : $rootScope.presentationDetails.parameters.widgetHowDoesSolarWorkOverallDuration,
"widgetGraphWeather" : $rootScope.presentationDetails.parameters.widgetGraphWeather,
"wIdgetGraphTemperatureChartType" : $rootScope.presentationDetails.parameters.wIdgetGraphTemperatureChartType,
"widgetGraphTemperature" : $rootScope.presentationDetails.parameters.widgetGraphTemperature,
"widgetWeatherType" : $rootScope.presentationDetails.parameters.widgetWeatherType,
"transitionOut" : $rootScope.presentationDetails.parameters.transitionOut,
"transitionIn" : $rootScope.presentationDetails.parameters.transitionIn,
"parametersId" : $rootScope.presentationDetails.parameters.parametersId,
"subheaderFont" : {
"fontId" : $rootScope.presentationDetails.parameters.subheaderFont.fontId,
"size" : $rootScope.presentationDetails.parameters.subheaderFont.size,
"name" : $rootScope.presentationDetails.parameters.subheaderFont.name,
"color" : $rootScope.presentationDetails.parameters.subheaderFont.color,
"visible" : $rootScope.presentationDetails.parameters.subheaderFont.visible,
"label" : $rootScope.presentationDetails.parameters.subheaderFont.label,
"content" : $rootScope.presentationDetails.parameters.subheaderFont.content,
},
"normal2Font" : {
"fontId" : $rootScope.presentationDetails.parameters.normal2Font.fontId,
"size" : $rootScope.presentationDetails.parameters.normal2Font.size,
"name" : $rootScope.presentationDetails.parameters.normal2Font.name,
"color" : $rootScope.presentationDetails.parameters.normal2Font.color,
"visible" : $rootScope.presentationDetails.parameters.normal2Font.visible,
"label" : $rootScope.presentationDetails.parameters.normal2Font.label,
},
"backgroundImage" : $rootScope.presentationDetails.parameters.backgroundImage,
"backgroundImageVisible" : $rootScope.presentationDetails.parameters.backgroundImageVisible,
"backgroundImageLabel" : $rootScope.presentationDetails.parameters.backgroundImageLabel,
"backgroundColor" : $rootScope.presentationDetails.parameters.backgroundColor,
"backgroundColorVisible" : $rootScope.presentationDetails.parameters.backgroundColorVisible,
"backgroundColorLabel" : $rootScope.presentationDetails.parameters.backgroundColorLabel,
"widgetIndex" : $rootScope.presentationDetails.parameters.widgetIndex,
"rowPosition" : $rootScope.presentationDetails.parameters.rowPosition,
"colPosition" : $rootScope.presentationDetails.parameters.colPosition,
"rowCount" : $rootScope.presentationDetails.parameters.rowCount,
"colCount" : $rootScope.presentationDetails.parameters.colCount,
"duration" : $rootScope.presentationDetails.parameters.duration,
"startDate" : $rootScope.presentationDetails.parameters.startDate,
"endDate" : $rootScope.presentationDetails.parameters.endDate,
},
};
}, 10);
Заглянул в код текущего проекта... Зря тимлид не проводит кодревью... У кого есть идеи нахеряки?
+7
typedef SmartPtr<CallRec> callptr;
callptr *m_call;
if (m_call && (*m_call) && (*m_call)->SomeMethod()) {
// ...
}
GnuGK и смартпоинтеры.
+143
strlen(s + 5);
"А чего это оно на 10 символов меньше чем надо возвращает?"
+76
if mas[i-1,j-1]=true then begin neib[m]:=true; inc(m); end; //считаем соседей
if mas[i-1,j]=true then begin neib[m]:=true; inc(m); end;
if mas[i-1,j+1]=true then begin neib[m]:=true; inc(m); end;
if mas[i,j-1]=true then begin neib[m]:=true; inc(m); end;
if mas[i,j+1]=true then begin neib[m]:=true; inc(m); end;
if mas[i+1,j-1]=true then begin neib[m]:=true; inc(m); end;
if mas[i+1,j]=true then begin neib[m]:=true; inc(m); end;
if mas[i+1,j+1]=true then begin neib[m]:=true; inc(m); end;
Знакомый человек реализовывал «Жизнь» на делфях...
+23
//VS 2010 C++
#include <Windows.h>
#include <time.h>
#include <queue>
#pragma comment(lib, "winmm.lib")
char shapeForms[7][4][5][6] = {{{{0,0,0,0,0},{0,0,1,0,0},{0,0,1,0,0},{0,0,1,0,0},{0,0,1,0,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,1,1,1,1},{0,0,0,0,0}},{{0,0,0,0,0},{0,0,1,0,0},{0,0,1,0,0},{0,0,1,0,0},{0,0,1,0,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,1,1,1,1},{0,0,0,0,0}}},{{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,1,1,0},{0,0,1,1,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,1,1,0},{0,0,1,1,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,1,1,0},{0,0,1,1,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,1,1,0},{0,0,1,1,0}}},{{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,1,1,1},{0,0,0,1,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,1,0},{0,0,0,1,1},{0,0,0,1,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,1,0},{0,0,1,1,1},{0,0,0,0,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,1,0},{0,0,1,1,0},{0,0,0,1,0}}},{{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,1,1,0},{0,0,0,1,1}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,1,0},{0,0,1,1,0},{0,0,1,0,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,1,1,0},{0,0,0,1,1}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,1,0},{0,0,1,1,0},{0,0,1,0,0}}},{{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,1,1,1},{0,0,1,0,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,1,1,0},{0,0,0,1,0},{0,0,0,1,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,0,1,0},{0,1,1,1,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,1,0,0},{0,0,1,0,0},{0,0,1,1,0}}},{{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,0,1,1},{0,0,1,1,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,1,0,0},{0,0,1,1,0},{0,0,0,1,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,0,1,1},{0,0,1,1,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,1,0,0},{0,0,1,1,0},{0,0,0,1,0}}},{{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,1,1,1},{0,0,0,0,1}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,1,1,0},{0,0,1,0,0},{0,0,1,0,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,1,0,0,0},{0,1,1,1,0}},{{0,0,0,0,0},{0,0,0,0,0},{0,0,0,1,0},{0,0,0,1,0},{0,0,1,1,0}}}}, field[32][28] = {0}, shape[5], shape_r[5], modifiers[4][3] = {{0,-1,0},{0,1,0},{1,0,0},{0,0,64}}, keys[4] = {'A', 'D', 'W', 'S'}, keyPressed = -1, lk = 0; //shape - 1: shape state; 2: shape type; 3: y; 4: x;
std::queue<std::pair<COORD, std::pair<char, char>>> paste;
COORD t;
unsigned int Score(0);
void draw(COORD cd, char c) {if((cd.Y = cd.Y - 4)||true) if(cd.Y >= 0) {SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), cd);
printf("%c", c);}}
bool next_frame(bool mode, bool isShapeFell) {for(char y(0); y != 5; ++y) {for(char x(0); x != 6; ++x) {t.X = shape[4]+x; t.Y = shape[3]+y;
if(shapeForms[shape[2]][shape[1]][y][x] == 1) {if(field[t.Y][t.X] == 0) paste.push(std::make_pair(t, std::make_pair(-37, 1)));
if(field[t.Y][t.X] == 2 || field[t.Y][t.X] == 3) isShapeFell = true;}else if(field[t.Y][t.X] == 1) paste.push(std::make_pair(t, std::make_pair(32, 0)));}}
if(isShapeFell) {while(paste.size()) paste.pop();
if(mode) for(char i(0); i != 31; ++i) for(char j(0); j != 25; ++j) if(field[i][j] == 1) field[i][j] = 3;
return false;}else {for(paste; paste.size() != 0; paste.pop()) {draw(paste.front().first, paste.front().second.first);
field[paste.front().first.Y][paste.front().first.X] = paste.front().second.second;}}
return true;}
bool clearFullLines() {for(char isLineExist(1); isLineExist == 1;) {isLineExist = 0;
for(char j(0), up(0), down(0), cnt(0); j != 31; (++j) && (cnt = 0)) {for(char i(3); i != 25; ++i) if(field[j][i] == 3) if(j < 5) return false; else cnt++;
if(cnt == 22) {if(isLineExist == 0 && (isLineExist = 1) && (down = j)) up = j;
else down = j;}else if(isLineExist == 1 && (Score = Score + down-up+1)) {for(char q = down, tmp(0); q >= char(4); (--q)) for(char p(3); p != 25; (++p) && (tmp = 0)) {for(t.X = p, t.Y = q; tmp == 0; tmp = 1);
field[q][p] = 0; draw(t, 32);
if(field[up+q-down-1][p] == 3) draw(t, -37);
t.Y = up+q-down-1;
field[q][p] = field[up+q-down-1][p];
field[up+q-down-1][p] = 0;}
goto next_search;}}
next_search:;}
return true;}
int main() {timeBeginPeriod(2);
system("mode con cols=42 lines=28");
srand(clock()+time(NULL));
memset(field, 2, sizeof(field));
for(char i(0); i != 28; ++i) for(char j(0), q(0); j != 32; ++j && (q = 0)) for(t.X = i, t.Y = j; q == 0; q = 1) draw(t, -80);
for(char i(3); i != 25; ++i) for(char j(0), q(0); j != 30; ++j && (q = 0)) for(t.X = i, t.Y = j; q == 0; (q = 1) && (field[j][i] = 0)) draw(t, 32);
for(int tm = 100;true;) {next_turn: if(!clearFullLines() && printf("You fail!")) {system("pause");
return 0;}
for(t.X = 30, t.Y = 5; false;);
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), t);
printf("Score: %i ", Score);
shape[1] = rand()*4/(RAND_MAX+1); shape[2] = rand()*7/(RAND_MAX+1); shape[4] = rand()*20/(RAND_MAX+1)+3;
for(shape[3] = 0; true; shape[3]++) {for(char h(0); h != 5; ++h) {Sleep(tm); tm = 70;
for(char i(0); i != 4 && keyPressed == -1; ++i) if(GetKeyState(keys[i]) < 0) keyPressed = i;
if(keyPressed != -1 && !(lk == keyPressed && lk == 2)) {for(char j(0); j != 5; ++j) shape_r[j] = shape[j];
shape[4] += modifiers[keyPressed][1]; shape[1] = (shape[1] + modifiers[keyPressed][0])%4;
tm -= modifiers[keyPressed][2];
lk = keyPressed;
keyPressed = -1;
if(!next_frame(false, false)) {for(char j(0); j != 5; ++j) shape[j] = shape_r[j];
if(!next_frame(true, false)) goto next_turn;}}else {if(!next_frame(true, false)) goto next_turn;
if(keyPressed == -1) lk = -1;
if(lk != 2) lk = 0;else keyPressed = -1;}}}}}
Была задача за минимальное кол-во строк реализовать простой тетрис. Особого внимания заслуживает 6 строчка кода. Всё очень плохо?
Управление WSAD.
+27
cout<<!0&&0;
Что вернет?
1) 1||0&&0
2) !0&&0
3) Приоритет оператора "!" ?
http://ideone.com/hHdZ1
http://ideone.com/s8Cj0
Сории за толстейший троллинг.
+127
foreach(string s in File.ReadAllText(input_text).Replace('ё', 'е').ToLower().Split(new char[] { ',', ' ', '.', '\t', '\r', '\n', '-', '?', '!', '\\', '/', ':', ';', '<', '>', '\'', '\"', '(', ')' }, StringSplitOptions.RemoveEmptyEntries).
AsParallel().Where<string>(s => (s.Length == 4)).GroupBy(x => x).Select(g => new { Value = g.Key, Count = g.Count() }). OrderByDescending(x => x.Count).Select(f => (f.Value + ' ' + f.Count.ToString())).ToArray())
{
Console.WriteLine(s);
}
Найдено в коде одного из участников олимпиады сосницких
Я понимаю, LINQ - это круто, но зачем так издеваться над проверяющим?