- 1
Я тут решил свой язык запилить, кто скажет, какой синтаксис кому нравится?
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+123
Я тут решил свой язык запилить, кто скажет, какой синтаксис кому нравится?
Пишите в комментарии!
+75
Integer code = Integer.valueOf(service.getId().toString());
service.getId() возвращает Long
+133
if (access(path, aflag) && mkfifo(path, mode) {
exit(-1);
}
Весьма интуитивная запись условия
+137
model.PID = row["PID"].ToString();
model.Rect = row["RECt"].ToString();
model.Pubt = row["PUBt"].ToString();
model.Ex = row["Ex"].ToString();
model.Prev_Vol = row["Prev_Vol"].ToString() != "" ? Tools.ParseDecimalValue(row["Prev_Vol"].ToString()).FormatAmountWithoutDecimal() : "";
model.Curr_Vol = row["Curr_Vol"].ToString() != "" ? Tools.ParseDecimalValue(row["Curr_Vol"].ToString()).FormatAmountWithoutDecimal() : "";
model.Mov_Vol = row["Mov_Vol"].ToString() != "" ? Tools.ParseDecimalValue(row["Mov_Vol"].ToString()).FormatAmountWithoutDecimal() : "";
decimal tonavgvol = Tools.ParseDecimalValue(row["Mov_Vol"].ToString());
decimal currentvol = Tools.ParseDecimalValue(row["Curr_Vol"].ToString());
if (row["Mov_Vol"].ToString() != "" && row["Curr_Vol"].ToString() != "" && tonavgvol != 0)
model.VolRat = (currentvol / tonavgvol).FormatAmount();
model.Open_Vol = row["Open_Vol"].ToString() != "" ? Tools.ParseDecimalValue(row["Open_Vol"].ToString()).FormatAmountWithoutDecimal() : "";
model.Close_Vol = row["Close_Vol"].ToString() != "" ? Tools.ParseDecimalValue(row["Close_Vol"].ToString()).FormatAmountWithoutDecimal() : "";
model.AllTicks = row["AllTicks"].ToString() != "" ? Tools.ParseDecimalValue(row["AllTicks"].ToString()).FormatAmountWithoutDecimal() : "";
model.ATR = row["ATR14"].ToString() != "" ? Tools.ParseDecimalValue(row["ATR14"].ToString()).FormatAmountFourDecimals() : "";
decimal open = Tools.ParseDecimalValue(row["Open"].ToString());
decimal close = Tools.ParseDecimalValue(row["Close"].ToString());
if (row["Open"].ToString() != "" && row["Close"].ToString() != "" && open != 0)
model.PrevDay = (((close - open) / open) * 100).FormatPercent();
model.PrevClose = row["PrevClose"].ToString() != "" ? Tools.ParseDecimalValue(row["PrevClose"].ToString()).FormatAmount() : "";
model.DayOpen = row["DayOpen"].ToString() != "" ? Tools.ParseDecimalValue(row["DayOpen"].ToString()).FormatAmount() : "";
decimal prevclose = Tools.ParseDecimalValue(row["PrevClose"].ToString());
decimal dayopen = Tools.ParseDecimalValue(row["DayOpen"].ToString());
if (row["DayOpen"].ToString() != "" && row["PrevClose"].ToString() != "" && prevclose != 0)
model.OpenGap = (((dayopen - prevclose) / prevclose) * 100).FormatPercent();
model.SPYLast = row["TONSPLast"].ToString() != "" ? Tools.ParseDecimalValue(row["TONSPLast"].ToString()).FormatAmount() : "";
model.TONOpen = row["TONOpen"].ToString() != "" ? Tools.ParseDecimalValue(row["TONOpen"].ToString()).FormatAmount() : "";
model.TONHigh = row["TONHigh"].ToString() != "" ? Tools.ParseDecimalValue(row["TONHigh"].ToString()).FormatAmount() : "";
model.TONLow = row["TONLow"].ToString() != "" ? Tools.ParseDecimalValue(row["TONLow"].ToString()).FormatAmount() : "";
model.TONLast = row["TONLast"].ToString() != "" ? Tools.ParseDecimalValue(row["TONLast"].ToString()).FormatAmount() : "";
model.EODHigh = row["EODHigh"].ToString() != "" ? Tools.ParseDecimalValue(row["EODHigh"].ToString()).FormatAmount() : "";
model.EODLow = row["EODLow"].ToString() != "" ? Tools.ParseDecimalValue(row["EODLow"].ToString()).FormatAmount() : "";
model.EODClose = row["EODClose"].ToString() != "" ? Tools.ParseDecimalValue(row["EODClose"].ToString()).FormatAmount() : "";
model.SPYClose = row["EODSPClose"].ToString() != "" ? Tools.ParseDecimalValue(row["EODSPClose"].ToString()).FormatAmount() : "";
model.PostVWAP = row["PostVWAP"].ToString() != "" ? Tools.ParseDecimalValue(row["PostVWAP"].ToString()).FormatAmount() : "";
model.PreVWAP = row["PreVWAP"].ToString() != "" ? Tools.ParseDecimalValue(row["PreVWAP"].ToString()).FormatAmount() : "";
model.MainVWAP = row["MainVWAP"].ToString() != "" ? Tools.ParseDecimalValue(row["MainVWAP"].ToString()).FormatAmount() : "";
model.AllVWAP = row["AllVWAP"].ToString() != "" ? Tools.ParseDecimalValue(row["AllVWAP"].ToString()).FormatAmount() : "";
model.EODVWAP = row["EODVWAP"].ToString() != "" ? Tools.ParseDecimalValue(row["EODVWAP"].ToString()).FormatAmount() : "";
decimal tonlast = Tools.ParseDecimalValue(row["TONLast"].ToString());
decimal eodhigh = Tools.ParseDecimalValue(row["EODHigh"].ToString());
decimal eodlow = Tools.ParseDecimalValue(row["EODLow"].ToString());
decimal tonhigh = Tools.ParseDecimalValue(row["TONHigh"].ToString());
decimal tonlow = Tools.ParseDecimalValue(row["TONLow"].ToString());
decimal eodclose = Tools.ParseDecimalValue(row["EODClose"].ToString());
decimal oedspclose = Tools.ParseDecimalValue(row["EODSPClose"].ToString());
decimal tonsplast = Tools.ParseDecimalValue(row["TONSPLast"].ToString());
// еще где-то 100-150 строчек в таком же духе
ADO.NET во все поля.
Бизнес-логика? Что это такое?
P.S. У класса model все свойства типа string, у всех decimal переменных потом тоже вызывается ToString().
+155
//выведет таблицу для отладки
function ExecSQL_SelectTable($sql)
{
if($data = ExecSQL_Select($sql)->fetchAll(PDO::FETCH_ASSOC)){
print '<table border=2>';
print '<tr>';
foreach(array_keys($data[0]) AS $v) print '<td>'.$v.'</td>';
print '</tr>';
foreach($data AS $row){
print '<tr>';
foreach($row AS $v) print '<td>'.$v.'</td>';
print '</tr>';
}
print '</table>';
}
die;
}
Что только люди не предумают чтобы не юзать нормальный debug и не отлаживать код нормально.
+101
function GetBit(numBit,Val: integer):boolean;
var
i: integer;
begin
i := round(power(2,numBit-1));
result := (i and Val) >0;
end;
Суровые и беспощадные битовые операции в дельфи. Причем коллега, у которого я это нашел неплохие программы пишет, во всяком случае по части удобства интерфейса мне до него далеко. Но иногда такие перлы встречаются.
+134
#include <stdio.h>
#define max(x,y) ((x>y)?x:y)
#define N 255
typedef unsigned char uchar;
uchar s,t,x,y,z,n,S[10000],FO[N+N*(N-1)/2];
uchar mask[]={1,2,4,8,16,32,64,128};
int TOP=0;
unsigned int COUNTER=0,AO[N];
FILE *in;
int pop(){
//if the top element in the stack is passed and stack is not empty,
//find next parent vertex
while(S[TOP]>128 && TOP>0) TOP-=S[TOP]-128;
return(TOP);
}
int push(){ //add new elements to the stack
int tmp=TOP,i,j,k; //tmp is a temporary variable
x=S[TOP-S[TOP]+1]; //x is a parent vertex
for(i=1;i<=FO[AO[x]];i++){
y=FO[AO[x]+i]; //y is a neigbour of x
if(!test(y)){ //y is visited? if not keep going
k=max(y/8+1,S[TOP]-2); //copy set P(x) to the new set P(y)
S[++tmp]=y;
for(j=0;j<k;j++,S[++tmp]=0);
S[++tmp]=k+2;
for(j=1;j<=S[TOP]-2;j++) S[tmp-j]=S[TOP-j];
S[tmp-(y/8+1)]|=mask[y-(y/8)*8]; //add child y to P(y)
}
}
S[TOP]+=128; //drop flag for the vertex x
TOP=tmp; //the last child y become parent
}
int test(int j){ //does vertex j in the set P(TOP)?
z=((j/8+1)>S[TOP]-2)?0:(S[TOP-(j/8+1)] & mask[j-(j/8)*8])?1:0;
return(z);
}
int inc(){ //the path was found
COUNTER++;
S[TOP]+=128;
}
int main(){
int i,j,k;
in=fopen("Data15.txt","r"); //open file
fscanf(in," %d %d",&i,&n); //read the number of vertices
for(k=n,i=0;k>=0;k--){
fscanf(in,"%d %d",&j,&FO[i]);
j=FO[i];
for(AO[n-k]=++i-1;j>0;j--,i++){
fscanf(in,"%d ",&FO[i]);
}
}
printf("Type first and end nodes: "); //type s and t separated by space
scanf("%d %d",&s,&t);
S[0]=s;
for(j=1;j<=s/8+1;S[j++]=0);
S[j]=s/8+3;
TOP=j;
S[TOP-(s/8+1)]|=mask[s-(s/8)*8];
while(pop()>=0) (test(s) && test(t))?inc():push(); //launch breadth-search algorithm
printf("# of paths in the graph b/w s=%d and t=%d equals %d\n",s,t,COUNTER);
return(0);
}
разбирая старый CD бэкап откопал лабу...(знаю,знаю что продакшн кошернее, и на сях не пишу со студенчества)
хотел вайпнуть безжалости но вспомнил про говнокодосайт.
помоему код люто доставляет.
прога подсчитывает полное число путей в графе между заданными вершинами s и t.
граф считывается из файла в формате: "номер_вершины степень_вершины {достижимые_вершины_через_пробел}"
(по коду видно)
+9
#include <iostream>
#include <iterator>
#include <algorithm>
#include <array>
#include <memory>
using namespace std;
template<size_t N1, size_t N2, class T1, class T2,
class T = typename common_type<T1, T2>::type>
T (*concatCArray(const T1(&arr1)[N1], const T2(&arr2)[N2]))[N1+N2]{
const auto result = (T(*)[N1+N2]) new T[N1+N2];
copy(arr2, end(arr2), copy(arr1, end(arr1), *result));
return result;
}
template<std::size_t N, class T>
void viewCArrayPtr(T (*arr)[N]){
copy(*arr, end(*arr), ostream_iterator<T>(cout, " "));
}
template<size_t N1, size_t N2, class T1, class T2,
class T = typename remove_const<typename common_type<T1, T2>::type>::type>
array<T, N1+N2> concatArray(const array<T1, N1> &arr1, const array<T2, N2> &arr2){
array<T, N1+N2> result;
copy(begin(arr2), end(arr2), copy(begin(arr1), end(arr1), result.begin()));
return result;
}
template<std::size_t N, class T>
void viewArray(const array<T, N> arr){
copy(begin(arr), end(arr), ostream_iterator<T>(cout, " "));
}
int main() {
int arr1[]{0,1,2,3}, arr2[]{4,5,6};
auto ca = concatCArray(arr1, arr2);
unique_ptr<int[]> safe(*ca);
viewCArrayPtr(ca);
cout<<endl;
array<float, 2> a {1,2.5};
array<int, 3> b{3, 4, 5};
viewArray(concatArray(a, b));
return 0;
}
От туда.
http://ideone.com/3KjycI
+128
Sorry! The page could not be loaded.
Unable to connect to MySQL and select database.
MySQL reported: Access denied for user 'root'@'localhost' (using password: YES)
http://gvforum.ru/
эх, vasiliy, кто ж на продакшене базу от рута поднимает? надо же от юзверя с правами insert, delete, update, select
+160
{if $smarty.foreach.categories.iteration == 2 || $smarty.foreach.categories.iteration == 4 || $smarty.foreach.categories.iteration == 6 || $smarty.foreach.categories.iteration == 8 || $smarty.foreach.categories.iteration == 10 || $smarty.foreach.categories.iteration == 12 || $smarty.foreach.categories.iteration == 14 || $smarty.foreach.categories.iteration == 16}
<div class="clear"></div>
{/if}
Smarty