- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
Program upra;
var s:string;
i:integer;
begin
writeln ('vvesti stroku');
readln(s);
k:=0;
for i:=1 to length(s) do
if s='a' then
s:='*';
writeln(k);
end
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+144
Program upra;
var s:string;
i:integer;
begin
writeln ('vvesti stroku');
readln(s);
k:=0;
for i:=1 to length(s) do
if s='a' then
s:='*';
writeln(k);
end
Pascal. Меняем символ "а" на звёздочку. Школота детектед!
+167
if (!mysql_query($query)) {
echo 'Invalid query: '.mysql_error()."\n";
die();
} else {
mysql_query($query);
}
Вот такой вот крутой дебаггер!
+114
public partial class Chat : System.Web.UI.Page
{
...
private List<string> Messages
{
get { return (List<string>)Cache["messages"]; }
set { Cache.Insert("messages", value); }
}
protected void btnAddMessage_Click(object sender, EventArgs e)
{
if (this.Messages != null)
{
this.Messages.Add(string.Format("{0} say :{1}\n", this.UserName, tbUserMessage.Text));
// wai... oh shi---
this.Messages = this.Messages;
}
}
}
+160
/*
[... выдержки из файла functions.php ...]
*/
function secure_input_string($string,$strip = true) {
/*Функция позволяет обезопасить вводимые пользователем данные путем применения ряда функций в входной строке
* Входная строка должна быть текстом (string) */
if ((bool)$strip) {
//Усечение пробелов
$string = trim($string);
//Удаление PHP и HTML тегов
//$string = strip_tags($string);
//Перевод специальных символов в html эквиваленты
$string = htmlspecialchars($string);
//Отмена спец-символов обратными косыми чертами
}
//Удаление попыток вставки кода php или xml
$badcode = array('<?php','?>');
$code = array('<','>');
$string = str_replace($badcode,$code,$string);
return $string;
}
function get_rus_date($ymy) {
/*Функция для замены английский названий месяцев русскими названиями*/
//Предпологается, что данные поступили в формате ДД JAUNARY 2010, иначе выполнение функции не имеет смысла
//Массив с датами на английском
$eng = array('January','February','March','April','May','June','July','August','September',
'October','November','December');
//Массив с датами на русском
$rus = array('Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь',
'Октябрь','Ноябрь','Декабрь');
//Замена английских месяцов на русские
$ymy = str_replace($eng,$rus,$ymy);
return $ymy;
}
function str_size($size) {
//Функция для предаставления размера файла из функции filesize (возвращающуу байты) в удобочитаемый вид
//Приведение к строковому типу
$size = (string)$size;
if (strlen($size) == 0) {
//Не удалось получить размер файла
return false;
}
else if (strlen($size) <= 3) {
//Размер указан в Байтах
return $size.' byte';
}
else if (strlen($size) >= 4 && strlen($size) < 7) {
//Размер указан в Килобайтах
$size = (int)$size;
$size_k = $size/1024;
//Удалить двойную точность
$size_k = (int)$size_k;
return $size_k.' Kb';
}
else if (strlen($size) >= 7 && strlen($size) < 10) {
//Размер указан в Мегабайтах
$size = (int)$size;
$size_m = $size/1024;
$size_m = $size_m/1024;
//Оставить только один знак после точки
$size_m = round($size_m,1);
$size_m = $size_m.' Мб';
return $size_m;
}
else if (strlen($size) >= 10 && strlen($size) < 13) {
//Размер указан в Гигабайтах
$size = (int)$size;
$size_m = $size/1073741824;
//Оставить только один знак после точки
$size_m = round($size_m,1);
$size_m = $size_m.' Гб';
return $size_m;
}
else {
Продолжение трагикомической эпопеи http://govnokod.ru/4278
Орфография и пунктуация сохранены
+98
//
// Замена блоков __try/__finally нашей реализацией. Примеры использования:
// NTSTATUS SomeFunc() {
// X *p = NULL;
// NTSTATUS status = STATUS_SUCCESS;
// Try {
// p = new(NonPagedPool) X;
// if (!p) Leave(status = STATUS_INSUFFICIENT_RESOURCES);
//
// status = SomeKernelFunc();
// LeaveNS(status = STATUS_UNSUCCESSFUL);
// } Finally {
// if (p) delete p;
// }
// return status;
// }
//
#define Try if (1)
#define Finally try_exit: NOTHING
#define Leave(s) { s; goto try_exit; }
#define LeaveNS(s) {if (!NT_SUCCESS(status)) Leave(s);}
#define Run(s) {status = s; LeaveNS(;);}
Суровые исключения для Win32 драйвера
+144
switch (n)
{
case k:
some_action;
case k - 1:
some_action;
...
case 2:
some_action;
case 1:
some_action;
}
- когда может быть удобно использование switch без break'ов?
- например, когда хотите повторить операцию сколько-то раз
−153
10 IF 256 > 255 THEN PRINT "Pozdravlyaem s Dnem programmista!" : GOTO 40
30 PRINT "Bugagaga! Ktulhu woke up!!"
40 END
Поздравление с днём программиста от HH.ru. Впрочем, там многие хороши: http://kazan.hh.ru/news.xml?id=929
+125
command = new System.Data.SqlClient.SqlCommand();
command.Connection = connection;
command.CommandText = "select data from filestorage where id=@id;";
command.Parameters.AddWithValue("@id", fileId);
command.CommandType = CommandType.Text;
byte[] data = (byte[])command.ExecuteScalar();
command.CommandText = "select filename from filestorage where id=@id;";
string fName = (string)command.ExecuteScalar();
command.CommandText = "select sizebytes from filestorage where id=@id;";
long lngFileSize = (int)command.ExecuteScalar();
command.CommandText = "select foldername from filestorage where id=@id;";
string store= command.ExecuteScalar().ToString();
+162
int main(int argc, char* argv[])
{
// Массив русских букв:
char c[33], s[33];
// Заглавные буквы:
c[0] = 0x80; // А
c[1] = 0x81; // Б
c[2] = 0x82; // В
c[3] = 0x83; // Г
c[4] = 0x84; // Д
c[5] = 0x85; // Е
c[6] = 0x86; // Ж
c[7] = 0x87; // З
c[8] = 0x88; // И
c[9] = 0x89; // Й
c[10] = 0x8A; // К
c[11] = 0x8B; // Л
c[12] = 0x8C; // М
c[13] = 0x8D; // Н
c[14] = 0x8E; // О
c[15] = 0x8F; // П
c[16] = 0x90; // Р
c[17] = 0x91; // С
c[18] = 0x92; // Т
c[19] = 0x93; // У
c[20] = 0x94; // Ф
c[21] = 0x95; // Х
c[22] = 0x96; // Ц
c[23] = 0x97; // Ч
c[24] = 0x98; // Ш
c[25] = 0x99; // Щ
c[26] = 0x9A; // Ъ
c[27] = 0x9B; // Ы
c[28] = 0x9C; // Ь
c[29] = 0x9D; // Э
c[30] = 0x9E; // Ю
c[31] = 0x9F; // Я
c[32] = 0xF0; // Ё
// Прописные буквы:
s[0] = 0xA0; // а
s[1] = 0xA1; // б
s[2] = 0xA2; // в
s[3] = 0xA3; // г
s[4] = 0xA4; // д
s[5] = 0xA5; // е
s[6] = 0xA6; // ж
s[7] = 0xA7; // з
s[8] = 0xA8; // и
s[9] = 0xA9; // й
s[10] = 0xAA; // к
s[11] = 0xAB; // л
s[12] = 0xAC; // м
s[13] = 0xAD; // н
s[14] = 0xAE; // о
s[15] = 0xAF; // п
s[16] = 0xE0; // р
s[17] = 0xE1; // с
s[18] = 0xE2; // т
s[19] = 0xE3; // у
s[20] = 0xE4; // ф
s[21] = 0xE5; // х
s[22] = 0xE6; // ц
s[23] = 0xE7; // ч
s[24] = 0xE8; // ш
s[25] = 0xE9; // щ
s[26] = 0xEA; // ъ
s[27] = 0xEB; // ы
s[28] = 0xEC; // ь
s[29] = 0xED; // э
s[30] = 0xEE; // ю
s[31] = 0xEF; // я
s[32] = 0xF1; // ё
// Конец массива.
cout << c[21] << s[14] << "-" << s[21] << s[14] << "!\n"; // Хо-хо!
getch();
return 0;
}
Когда я ещё не знал, как выводить в консоли русские буквы, спел и натанцевал индийский код.
+143
$a = "1";
$b = "$a";
if($a == $b) {
echo '$a = $b';
}
Восемь часов за компом.. Посмотрел на код еще раз :D