- 1
- 2
- 3
Кто против выхода языка программирования Lapis - ставьте минус, кто за - плюс.
P.s. если наберётся 10 плюсов, дам интерпретатор.
P.p.s. если наберётся 10 минусов, никогда никому тут не дам интерпретатор :)
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+144
Кто против выхода языка программирования Lapis - ставьте минус, кто за - плюс.
P.s. если наберётся 10 плюсов, дам интерпретатор.
P.p.s. если наберётся 10 минусов, никогда никому тут не дам интерпретатор :)
Ждём-с, пока пост наберёт +-10.
+127
#define PIXEL_PARTS_NUM 3
typedef struct _pixel {
char parts[PIXEL_PARTS_NUM];
} pixel;
+126
import Data.Array
import Control.Arrow
l = [1,5,5,5,8,10,17]
make_array [] = undefined
make_array l = listArray (0, (length l)-1) l
-- binary_search:: (Integral i, Num i, Ord e, Ix i) => e -> Array i e -> i
binary_search item arr = bs la ra where
(la, ra) = bounds arr
nextWhileEqualItem = uncurry iterate >>> takeWhile (\i -> la<=i && i<=ra && arr!i==item) >>> last
bs l r
| (m == l || m == r) && item/=av = Nothing
| item<av = bs l m
| item>av = bs m r
| item==av = Just (nextWhileEqualItem ((+) (-1), m), nextWhileEqualItem ((+)1, m))
| otherwise = Nothing
where
m = (l+r) `div` 2
av = arr!m
main = do
print $ binary_search 8 $ make_array l
print $ binary_search 5 $ make_array l
print $ binary_search 5 $ make_array $ tail l
print $ binary_search 0 $ make_array l
print $ binary_search 100 $ make_array l
print $ binary_search 9 $ make_array l
Решил я значит поучаствовать в специальной олимпиаде Романа с двача.
http://ideone.com/K5Jj59
+51
template <class T> class return_1_t: public std::unary_function<T, T> {
public:
return_1_t(const T & Ret) : _ret(Ret) {}
T operator()(T Arg) const { return _ret; }
private:
T _ret;
};
template <class Arg1, class Arg2> class project1st: public std::binary_function<Arg1, Arg2, Arg1> {
public:
Arg1 operator()(const Arg1 & X, const Arg2 & Y) { return X; }
};
template <class Arg1, class Arg2> class project2nd: public std::binary_function<Arg1, Arg2, Arg2> {
public:
Arg2 operator()(const Arg1 & X, const Arg2 & Y) { return Y; }
};
template <class T> class identity: public std::unary_function<T, T> {
public:
T operator()(const T & Arg) const { return Arg; }
};
template <class To, class From> class static_cast_t: public std::unary_function<To, From> {
public:
To operator()(From obj) const { return static_cast<To>(obj); }
};
template <class T> class take_address: public std::unary_function<T&, T*> {
public:
result_type operator()(argument_type arg) const { return &(arg); }
};
template <class T> class take_const_address: public std::unary_function<const T&, const T*> {
public:
result_type operator()(argument_type arg) const { return &(arg); }
};
template <class T> class creator: public std::unary_function<void, T*> {
public:
result_type operator()(void) const { return new T(); }
};
template <class T, class Arg1> class creator_1_par: public std::unary_function<Arg1, T*> {
public:
result_type operator()(argument_type arg) const { return new T(arg); }
};
template <class T, class Arg1, class Arg2> class creator_2_par: public std::binary_function<Arg1, Arg2, T*> {
public:
result_type operator()(first_argument_type arg1, second_argument_type arg2) const { return new T(arg1, arg2); }
};
template <class T> class maker: public std::unary_function<void, T> {
public:
result_type operator()(void) const { return T(); }
};
template <class T, class Arg1> class maker_1_par: public std::unary_function<Arg1, T> {
public:
result_type operator()(argument_type arg) const { return T(arg); }
};
template <class T, class Arg1, class Arg2> class maker_2_par: public std::binary_function<Arg1, Arg2, T> {
Вот до чего доводит людей отсутствие частичного применения и лямбд.
−123
//***************************************************************************
Функция ИмяМесяца(Дата)
Если ТипЗнч(Дата) = Тип("Дата") тогда
НомерМесяца = Месяц(Дата);
НомерГода = Год(Дата);
Иначе
НомерМесяца = Число(Сред(Дата,5,2));
НомерГода = Число(Лев(Дата,4));
КонецЕсли;
Если НомерМесяца = 1 тогда
ИмяМесяца = "Январь";
ИначеЕсли НомерМесяца = 1 тогда
ИмяМесяца = "Январь";
ИначеЕсли НомерМесяца = 2 тогда
ИмяМесяца = "Февраль";
ИначеЕсли НомерМесяца = 3 тогда
ИмяМесяца = "Март";
ИначеЕсли НомерМесяца = 4 тогда
ИмяМесяца = "Апрель";
ИначеЕсли НомерМесяца = 5 тогда
ИмяМесяца = "Май";
ИначеЕсли НомерМесяца = 6 тогда
ИмяМесяца = "Июнь";
ИначеЕсли НомерМесяца = 7 тогда
ИмяМесяца = "Июль";
ИначеЕсли НомерМесяца = 8 тогда
ИмяМесяца = "Август";
ИначеЕсли НомерМесяца = 9 тогда
ИмяМесяца = "Сентябрь";
ИначеЕсли НомерМесяца = 10 тогда
ИмяМесяца = "Октябрь";
ИначеЕсли НомерМесяца = 11 тогда
ИмяМесяца = "Ноябрь";
ИначеЕсли НомерМесяца = 12 тогда
ИмяМесяца = "Декабрь";
КонецЕсли;
Возврат ИмяМесяца + " " + Формат(НомерГода,"ЧГ=0");
КонецФункции
Неделю умилялся и плакал от счастья=)
+128
//...
for (int i = 0; i < size; i++)
{
//...
if (i == size + 2) break;
//...
}
//...
Увидел у соседа в коде. Осторожность никогда не помешает :)
+130
class Int extends Float {}
http://haxe.ru/ref-base_types
+162
function image($id, $idname, $width, $height, $save, $jpg) {
...........................................................................................
//throw new Exception('Типо неизвестный формат');
echo 'Типо неизвестный формат изображения';
}
function video($id, $idname, $save, $wmv) {
.......................................................................................
//throw new Exception('Типо неизвестный формат');
echo "Типо неизвестный формат !" . $id['name'];
}
От автора "Ghgh", Новый остросюжетный код "Типо ошибка"
+134
private void FormBackUpFlash_Load(object sender, EventArgs e)
{
DriveInfo[] allDrives = DriveInfo.GetDrives();
foreach (DriveInfo d in allDrives)
{
if (d.DriveType == DriveType.Removable)
{
bool thisIsDisketa = false;
if (d.Name.Contains("A:")) thisIsDisketa = true;
if (d.Name.Contains("B:")) thisIsDisketa = true;
if (thisIsDisketa)
continue;
else
listBoxDevice.Items.Add(d);
}
}
if (listBoxDevice.Items.Count > 0)
{
StatusLabel.ForeColor = Color.Blue;
StatusLabel.Text = "Готово!";
listBoxDevice.SelectedIndex = 0;
}
else
{
buttonWrite.Enabled = false;
StatusLabel.ForeColor = Color.Red;
StatusLabel.Text = "Подходящих устройств нет!";
}
}
private void buttonWrite_Click(object sender, EventArgs e)
{
try
{
DriveInfo drv = (DriveInfo)listBoxDevice.SelectedItem;
pathDst = Path.Combine(drv.Name, "PROJECTNAME_Backup");
if (!Directory.Exists(Path.Combine(drv.Name, "PROJECTNAME_Backup")))
{
Directory.CreateDirectory(pathDst);
}
this.Cursor = Cursors.WaitCursor;
DBMSSQL dbm = new DBMSSQL();
int i;
for (i = 0; i < 10; i++)
{
if (dbm.BackupDB(Path.Combine(Path.Combine(drv.Name, "PROJECTNAME_Backup"), "DataPROJECTNAMEDataContext.bak"), true))
{
MessageBox.Show("Резервная копия создана успешно!", "OK!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
break;
}
Thread.Sleep(1000);
}
if (i == 10)
{
MessageBox.Show("Ошибка при создании резервной копии!!!", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
catch (Exception e1)
{
MessageBox.Show(e1.Message + "\r\nЭкспорт отменен!");
this.DialogResult = DialogResult.Cancel;
}
finally { this.Cursor = Cursors.Default; }
}
private void listBoxDevice_SelectedIndexChanged(object sender, EventArgs e)
{
try
{
DriveInfo drv = (DriveInfo)listBoxDevice.SelectedItem;
labelSizeDevice.Text = drv.AvailableFreeSpace < 1000000000 ?
string.Format("{0}MB", drv.AvailableFreeSpace / 1000000) :
string.Format("{0:F2}GB", (float)drv.AvailableFreeSpace / 1000000000.0);
}
catch (Exception e1)
{
MessageBox.Show(e1.Message);
}
}
Три в одном.
Исключаем флоппи из списка дисков, 10 раз пытаемся создать бэкап и 1000000 байт в мегабайте.
−148
"class".class.class
Не говнокод, просто забавно