- 1
- 2
- 3
- 4
- 5
- 6
if($this->unpriced){
//............... строк 30 кода
if($this->unpriced){
//................ строк 10 кода
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+146
if($this->unpriced){
//............... строк 30 кода
if($this->unpriced){
//................ строк 10 кода
}
}
Вот такую забавную проверку нашол в старом коде. Видать, для уверенности, или скорее всего логика менялась.
−83
-(void)makeItemavAilableWithName:(NSString*) name{
[[NSUserDefaults standardUserDefaults] setValue:@"YES" forKey:name];
}
-(BOOL)isItemAvaliableWithName:(NSString*) name{
//item could be a chracter or a world
return [[[NSUserDefaults standardUserDefaults] valueForKey:name]boolValue];
}
Вот так вот мы сохраняем булевые переменные в UserDefaults. Оригинальная орфография и пунктуация сохранены
+158
$uri = $_SERVER["REQUEST_URI"];
// получаем урл и выбираем id
preg_match('![?|&]p=(.*)$!',$uri,$r);
@$_GET['p'] = $r[1];
+125
#include <stdio.h>
#define MAXLINE 1000 /* максимальная длина строки в потоке */
int getline(char line[], int maxline);
main()
{
int len; /* длина текущей строки */
char line[MAXLINE]; /* текущая введённая строка */
while((len = getline(line, MAXLINE)) != (-1))
printf("%s", line);
system("PAUSE");
return 0;
}
/* getline: считывает строку в s, удаляет пробелы и знаки табуляции в конце строки, возвращает её длину. Удаляет полностью пустые строки */
getline(char s[], int lim)
{
int c, i;
for(i = 0; i < lim - 1 && (c = getchar()) != EOF && c != '\n'; ++i)
s[i] = c;
if (c == EOF)
return (-1); /* конец ввода */
else if (c == '\n') {
while(s[i-1] == ' ' || s[i-1] == '\t') /* "удаление" пробелов и знаков табуляции в конце строки */
--i;
if (i > 0) { /* если строка непустая */
s[i] = '\n';
++i;
}
s[i] = '\0';
return i;
}
}
Задача: убирать в конце каждой строки лишние пробелы и знаки табуляции, удалять полностью пустые строки.
Решение: при считывании строки вида "abc_____\n" на выходе получаем массив символов "abc\n\0___" (пробелы в конце). Печатаем строки по мере поступления, профит.
Говнокод или нормально?
+961
private class LinkedAction
{
public Action<Action<bool>> Action { get; set; }
public LinkedAction Next { get; set; }
public void Execute()
{
Action(s =>
{
if (s && Next != null) Next.Execute();
});
}
}
private static LinkedAction NewLinkedAction(LinkedAction link, Action<Action<bool>> action)
{
return new LinkedAction
{
Action = action,
Next = link
};
}
var action = GetCopytoTestActions(parameter)
.Reverse()
.Aggregate<Action<Action<bool>>, LinkedAction>(null, NewLinkedAction);
action.Execute();
−139
Если ЗначениеЗаполнено(ВыслугаЛет) Тогда
Запрос.УстановитьПараметр("ВыслугаЛет", ВыслугаЛет);
КонецЕсли;
Если не ЗначениеЗаполнено(ВыслугаЛет) Тогда
Запрос.Текст = СтрЗаменить(Запрос.Текст,"И ПНУ.ВидРасчета <> &ВыслугаЛет","");
Запрос.Текст = СтрЗаменить(Запрос.Текст,"И ТабельныйЛист.ВидРасчета <> &ВыслугаЛет","");
Запрос.Текст = СтрЗаменить(Запрос.Текст,"И Прекращения.ВидРасчета <> &ВыслугаЛет","");
КонецЕсли;
Запрос.УстановитьПараметр("Организация", Организация);
Запрос.УстановитьПараметр("ПодразделениеОрганизации", ПодразделениеОрганизации);
Если ПодразделениеОрганизации.Пустая() Тогда
Запрос.Текст = СтрЗаменить(Запрос.Текст,"И Подразделение В ИЕРАРХИИ(&ПодразделениеОрганизации)","");
Запрос.Текст = СтрЗаменить(Запрос.Текст,"И Прекращения.ПодразделениеОрганизации = &ПодразделениеОрганизации","");
Запрос.Текст = СтрЗаменить(Запрос.Текст,"И ТабельныйЛист.Подразделение В ИЕРАРХИИ(&ПодразделениеОрганизации)","");
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ВыслугаЛет) Тогда
Запрос.Текст = СтрЗаменить(Запрос.Текст,"ГДЕ
| ТабельныйЛист.ВидРасчета <> &ВыслугаЛет
| И","Где ");
КонецЕсли;
−142
Если РучнойВводОтработанногоВремени И СТЧ.ОтработаноДней = 0 И СТЧ.ОтработаноЧасов = 0 Тогда
Если СТЧ.ОтработаноДней = 0 И СТЧ.ОтработаноЧасов = 0 Тогда
СТЧ.ОтработаноДней = НачислениеИзРегистрыРасчета.ОтработаноДней;
СТЧ.ОтработаноЧасов = НачислениеИзРегистрыРасчета.ОтработаноЧасов;
КонецЕсли;
КонецЕсли;
Бонд, Джеймс Бонд.
Если СТЧ.ОтработаноДней = 0 И СТЧ.ОтработаноЧасов = 0 Тогда
Если СТЧ.ОтработаноДней = 0 И СТЧ.ОтработаноЧасов = 0 Тогда
+106
private void ReferenceButton_Click(object sender, EventArgs e)
{
this.ContentBox.Controls.Remove(this.BooksPanel);
this.ContentBox.Controls.Remove(this.LogoPanel);
this.ContentBox.Controls.Remove(this.SearchPanel);
this.ContentBox.Controls.Add(this.FAQPanel);
}
Удаляем старые контролы таким образом)
Почти в 100% случаев найдется умник, который назовет любой код - говном.
+988
#include <iostream>
#include <windows.h>
using namespace std;
unsigned long calculateTime( int, int );
void turnOff();
int main()
{
// вводим кол-во часов и минут, которые надо ждать
int hours, minutes;
cin >> hours >> minutes;
// ждем нужное время
unsigned long timer = calculateTime( hours, minutes );
Sleep( timer );
turnOff(); // выключаем компьютер
return 0;
}
// подсчет кол-во миллисекунд в указанном времени
unsigned long calculateTime( int hours, int minutes )
{
unsigned long timer = 0;
timer += hours * 3600000;
timer += minutes * 60000;
return timer;
}
// выключение компьютера
void turnOff()
{
WinExec( "shutdown -s -t 0", SW_HIDE );
}
Я сделал. Что-то вроде автовыключалки для компьютера.
Разъясните, пожалуйста, где автор неправ и почему.
+962
using System;
class Program
{
static void Main(params String[] args)
{
Console.WriteLine(ost_ot_dilen(int.Parse(args[1].ToString()), int.Parse(args[2].ToString())));
Console.Read();
}
public static int ost_ot_dilen(int a, int b)
{
int c = tseloch_dilen(a, b);
int d = (b * c);
int e = a - d;
return e;
}
public static int tseloch_dilen(int a, int b)
{
double c = a / b;
double d = Math.Floor(c);
return int.Parse(d.ToString());
}
}
Полный букет радостей (не к прошедшим ли праздикам?)
Тут тебе и "a % b" - не, не слышал, и то же самое про целочисленное деление (обратите внимание на названия функций дИления)
И куча бессмысленных переменных, которые можно переприсвоить, и применение ToString() к строкам, и парамс-памс-памс... наслаждайтесь.
P.S. Его уже отчислили...