- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
for (const auto& item : items)
{
if (!item.isValid())
continue;
else
{
// 200 строк кода
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
for (const auto& item : items)
{
if (!item.isValid())
continue;
else
{
// 200 строк кода
}
}
Что делать с такими колегами?
0
<?
error_reporting(E_ALL ^ E_DEPRECATED);
defined('_SECUR_GAMES') or die('Unknown Error!');
function bbcode($var = "") {
$var = preg_replace('#\[b\](.*?)\[/b\]#si', '<span style="font-weight: bold;">\1</span>', $var);
$var = preg_replace('#\[i\](.*?)\[/i\]#si', '<span style="font-style:italic;">\1</span>', $var);
$var = preg_replace('#\[u\](.*?)\[/u\]#si', '<span style="text-decoration:underline;">\1</span>', $var);
$var = preg_replace('#\[s\](.*?)\[/s\]#si', '<span style="text-decoration: line-through;">\1</span>', $var);
$var = preg_replace('#\[big\](.*?)\[/big\]#si', '<big>\1</big>', $var);
$var = preg_replace('#\[small\](.*?)\[/small\]#si', '<small>\1</small>', $var);
$var = preg_replace('#\[center\](.*?)\[/center\]#si', '<center>\1</center>', $var);
$var = preg_replace('#\[right\](.*?)\[/right\]#si', '<span class="right">\1</span>', $var);
$var = preg_replace('#\[hr\](.*?)\[/hr\]#si', '<hr>\1</hr>', $var);
$var = preg_replace('#\[br\](.*?)\[/br\]#si', '<br>\1</br>', $var);
$var = preg_replace('#\[p\](.*?)\[/p\]#si', '<p>\1</p>', $var);
$var = preg_replace('#\[gold\](.*?)\[/gold\]#si', '<span style="color:gold">\1</span>', $var);
return $var;
}
function calculate_age($birthday) {
$birthday_timestamp = strtotime($birthday);
$age = date('Y') - date('Y', $birthday_timestamp);
if (date('md', $birthday_timestamp) > date('md')) {
$age--;
}
return $age;
}
function generatePassword($length=8){
$chars = 'qwedazxscvfrtgnbhyujmkiolp1234567890WEDAZXSCVFRTGNBHYUJMKIOLP';
$numChars = strlen($chars);
$string = '';
for ($i = 0; $i < $length; $i++) {
$string .= substr($chars, rand(2, $numChars) - 1,2);
}
return $string;
}
function generatePass_word($length=8){
$chars = 'qcvfrtgnbhyujmlp567890WEDAZXSCVFRBHYIOLP';
$numChars = strlen($chars);
$string = '';
for ($i = 0; $i < $length; $i++) {
$string .= substr($chars, rand(2, $numChars) - 1,2);
}
return $string;
}
function generateLogin($length=8){
$chars = 'qweascv8fjmk6iolp123450WEXSCVFRTGNUOLP';
$numChars = strlen($chars);
$string = '';
for ($i = 0; $i < $length; $i++) {
$string .= substr($chars, rand(2, $numChars) - 1,2);
}
return $string;
}
function check($str)
{
$str = htmlentities($str, ENT_QUOTES, 'UTF-8');
$str = str_replace("\'", "'", $str);
$str = str_replace("\r\n", "<br/>", $str);
$str = strtr($str, array(chr("0") => "", chr("1") => "", chr("2") => "", chr("3") => "", chr("4") => "", chr("5") => "", chr("6") => "", chr("7") => "", chr("8") => "", chr("9") => "", chr("10") => "", chr("11") => "", chr("12") => "", chr
("13") => "", chr("14") => "", chr("15") => "", chr("16") => "", chr("17") => "", chr("18") => "", chr("19") => "", chr("20") => "", chr("21") => "", chr("22") => "", chr("23") => "", chr("24") => "", chr("25") => "", chr("26") => "", chr("27") =>
"", chr("28") => "", chr("29") => "", chr("30") => "", chr("31") => ""));
$str = str_replace('\\', "\", $str);
$str = str_replace("|", "I", $str);
$str = str_replace("||", "I", $str);
$str = str_replace("/\\\$/", "$", $str);
$str = str_replace("[l]http://", "[l]", $str);
$str = str_replace("[l] http://", "[l]", $str);
$str = mysql_real_escape_string($str);
return $str;
}
class PAGINGS
{
public $total;
private $total_pages;
private $page;
private $start;
private $end;
public $get;
public $count_get;
public function __construct($size, $query)
{
$this->total = mysql_result(mysql_query(preg_replace('~SELECT (.*?) FROM~isU', 'SELECT COUNT(*) FROM', $query).' ;'), 0);
$this->total_pages = ceil($this->total / $size);
$this->page = isset($_POST['page']) ? $_POST['page'] : $_GET['page'];
$this->page = !empty($this->page) && ctype_digit($this->page) && $this->page >= 1 && $this->page <= $this->total_pages ? $this->page : 1;
$this->start = ($this->page * $size) - $size;
$this->end = $this->start + $size < $this->total ? $this->start + $size : $this->total;
$this->get = mysql_query($query.' LIMIT '.$this->start.', '.htmlspecialchars(stripslashes(addslashes(strip_tags(mysql_real_escape_string(trim($size)))))).' ;');
$this->count_get = @ mysql_num_rows($this->get);
}
Взял перл из спора с каким-то мамкиным экспертом, утверждавшим "функциональщина - сраный легаси, ооп - наше всё". Здесь ещё куча алмазиков:
https://bymas.ru/downloads/view/77400
−2
/*
Программа для генерации и вывода разряженной матрицы
Специально для сайта govnokod.ru
*/
#include <iostream>
#include <cstdlib>
#include <ctime>
// Объявление переменных
const int first_index_size=20;
const int second_index_size=50;
char matrix_array[first_index_size][second_index_size];
enum border_style{
line,single
};
void borders(border_style matrix_border)
{
switch(matrix_border)
{
case 0:
for(int i=0; i<(second_index_size+2); i++)
std::cout<<"#";
std::cout<<"\n";
break;
case 1:
std::cout<<"#";
}
}
void rand_func_init()
{
// Инициализация функции rand()
srand(time(0));
rand();
}
void matrix_init_zero()
{
// Инициализация матрицы нулём
for(int i=0; i<first_index_size; i++)
for(int t=0; t<second_index_size; t++)
matrix_array[i][t]=0;
}
void matrix_init_rand()
{
// Заполнение матрицы
for(int i=0; i<first_index_size; i++)
{
int init_num=rand()%11;
while(init_num)
{
init_num--;
matrix_array[i][rand()%50]=149;
}
}
}
void matrix_print()
{
// Вывод матрицы
borders(line);
for(int i=0; i<first_index_size; i++)
{
borders(single);
for(int t=0; t<second_index_size; t++)
std::cout<<matrix_array[i][t];
borders(single);
std::cout<<"\n";
}
borders(line);
}
int main()
{
rand_func_init();
matrix_init_zero();
matrix_init_rand();
matrix_print();
return 0;
}
Разряженная матрица 20x50.
Количество ненулевых значений от 0 до 10.
+1
// NextViewController.swift
override func tableView(tableView: UITableView!, didSelectRowAtIndexPath indexPath: NSIndexPath!) {
NSUserDefaults.standardUserDefaults().setInteger(indexPath.row, forKey: "Selected offense")
let offense: NSDictionary = self.offenses.objectAtIndex(indexPath.row) as NSDictionary
let id: Int = offense.objectForKey("id") as Int
let title: String = offense.objectForKey("title") as String
NSUserDefaults.standardUserDefaults().setInteger(id, forKey: "Selected offense id")
NSUserDefaults.standardUserDefaults().setObject(title, forKey: "Selected offense title")
}
// PreviousViewController.swift
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
hideKeyboard()
tableView.reloadData()
}
func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell! {
let kCellIndetifier: String = "NewOffenseCell"
var cell: UITableViewCell = tableView.dequeueReusableCellWithIdentifier(kCellIndetifier, forIndexPath: indexPath) as UITableViewCell
if cell == nil {
cell = UITableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: kCellIndetifier)
}
cell.text = NSUserDefaults.standardUserDefaults().stringForKey("Selected offense title")
cell.font = UIFont.systemFontOfSize(20)
return cell
}
Реализуем колбэки *лицорука*
0
function kvadrt() {
d = document
var a = Number(d.form1.num1.value)
var b = Number(d.form1.num2.value)
var c = Number(d.form1.num3.value)
var diz = eval(Math.pow(b, 2) - 4 * a * c)
var e = eval((-b + Math.sqrt(diz)) / (2 * a))
var e1 = eval((-b - Math.sqrt(diz)) / (2 * a))
var e2 = eval(-c / b)
var e3 = eval(-b / 2 * a)
var x1 = Number(d.form1.x1.value)
var x2 = Number(d.form1.x2.value)
if (a == 0 && b == 0 && c == 0) {
x1 = "x принадлежит R";
x2 = "x принадлежит R";
} else
if (a == 0 && b == 0 && c != 0) {
x1 = "Решений нет";
x2 = "Решений нет";
} else
if (a == 0 && b != 0 && c != 0) {
x1 = eval(e2);
x2 = " ";
} else
if (a != 0 && diz > 0) {
x1 = eval(e);
x2 = eval(e1);
} else
if (a != 0 && diz == 0) {
x1 = eval(e3);
x2 = " ";
} else {
x1 = "Решений нет";
x2 = "Решений нет";
}
d.form1.x1.value = x1;
d.form1.x2.value = x2;
}
Заканчиваю этот семестр, и ну его нахрен, это преподавательство.
+143
http://habrahabr.ru/company/neuronspace/blog/254671/
Захотелось поделится с сообществом.
+154
if ((new Date(2014, 0, 1)).getHours() != 0 || new Date(2015, 0, 7).getHours() != 0) {
// Переопределяем конструктор
Date = (function (NativeDate) {
var NewDate = function (Y, M, D, h, m, s, ms) {
var length = arguments.length;
var date = length === 1 && String(Y) === Y ? // isString(Y)
new NativeDate(NewDate.parse(Y)) :
length >= 7 ? new NativeDate(NativeDate.UTC(Y, M, D, h, m, s, ms)) :
length >= 6 ? new NativeDate(NativeDate.UTC(Y, M, D, h, m, s)) :
length >= 5 ? new NativeDate(NativeDate.UTC(Y, M, D, h, m)) :
length >= 4 ? new NativeDate(NativeDate.UTC(Y, M, D, h)) :
length >= 3 ? new NativeDate(NativeDate.UTC(Y, M, D)) :
length >= 2 ? new NativeDate(NativeDate.UTC(Y, M)) :
length >= 1 ? new NativeDate(Y) :
new NativeDate();
if (length == 0) {
date = new NativeDate(+date - date.getTimezoneOffset() * 60000);
}
date.constructor = NewDate;
return this instanceof NativeDate ? date : date.toString();
};
if (NativeDate.now) {
NewDate.now = function () {
return new NewDate().getTime();
};
}
if (NativeDate.UTC) {
NewDate._UTC = NativeDate.UTC;
NewDate.UTC = function (Y, M, D, h, m, s, ms) {
var _date = new NewDate(NewDate._UTC.apply(this, arguments));
return +_date - _date.getTimezoneOffset() * 60000;
};
}
NewDate.prototype = NativeDate.prototype;
NewDate.prototype.constructor = NewDate;
И так далее, "фикс" для кривых таймзон в JS на винде http://habrahabr.ru/post/243685/
+136
// Playground - noun: a place where people can play
import Cocoa
// Изначальный массив и ссылка на него
var originalArray: Int[] = [1, 2, 3]; // [1, 2, 3]
var extraArray = originalArray // [1, 2, 3]
// Поменяем во втором массиве элемент
extraArray[0] = 666
// Оппа изменился и в первом
extraArray // [666, 2, 3]
originalArray // [666, 2, 3] O_o
// Не делись!
extraArray.unshare()
// Теперь они живут своей жизнью
extraArray[0] = 333
extraArray // [333, 2, 3] okay
originalArray // [666, 2, 3]
// А вот тут будет наоборот
var anotherArray = originalArray // [666, 2, 3]
// auto unshare
anotherArray.append(-1)
anotherArray.removeLast()
anotherArray[0] = 777
anotherArray // [777, 2, 3]
originalArray // [666, 2, 3]
// Словари вообще не так себя ведут, всегда копирование
var originalDictionary = [ 1: "hello", 2: "world"]
var extraDictionary = originalDictionary
extraDictionary[1] = "no way"
originalDictionary // [ 1: "hello", 2: "world"]
extraDictionary // [ 1: "no way", 2: "world"]
Я восхвалял Свифт, а же его и обосру.
В Свифте есть массивы и словари. Так вот словари при присваивании или передаче как аргумента копируются. Окей. Теперь массивы. Они, оказывается, не копируются, а разделяют значения между собой! Т. е. передал массив в ф-цию, она там что-то испортила, массив испортился везде, где засветился.
Чтобы эту фигню остановить, нужно вызывать спец. функцию unshare
Но это еще не все. При некоторых операциях с массивами (потенциально меняющих их длину) unshare делается автоматически!
Предвижу классическую ошибку свифтокодеров: ожидал, что массив поменяется, а он не поменялся снаружи; или передал массив, поюзал, а он снаружи неожиданно испортился. Плюс путаница, что базовые типы ведут себя по-разному.
Оправдание Apple: мы хотели перформанс С-массивов в Свифте, поэтому сделали эту хрень.
+27
int enumDevices(DevInfo* &lst) {
int count = 0;
DevInfo* tmp = NULL;
Device device;
for (int i = 0; i < MAXDEVICES; i++)
if (device = OpenDevice(i)) {
count++;
realloc(tmp, sizeof(DevInfo)*count);
ReadInfo(device, &tmp[count-1]
}
if (count == 0) return 0;
lst = new DevInfo[count];
for (int i = 0; i < count; i++)
lst[i] = tmp[i];
free(tmp);
return count;
}
//................
DevInfo* list;
int devcount = enumDevices(list);
/* работаем со списком */
delete[] list;
Самому стыдно.
+141
Говнокод рекурсивный
Проходим по ссылке
http://govnokod.ru/comments/14234/rss
Смотрим на 5 строку
<link>http://govnokod.ru/comments/14301/rss</link>
Переходим по
http://govnokod.ru/comments/14301/rss
Запрашиваемая страница не найдена!
Возможно, её и не было никогда
Так и должно быть?