- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
class Greeter {
static var prefix = 'Hello,';
static greet(name) {
print('$prefix $name');
}
}
main() {
var greeter = new Greeter();
greeter.greet("govnokod!");
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+119
class Greeter {
static var prefix = 'Hello,';
static greet(name) {
print('$prefix $name');
}
}
main() {
var greeter = new Greeter();
greeter.greet("govnokod!");
}
Решил потыкать в Dart (http://www.dartlang.org/), а он мне:
greeter.greet$named is not a function
−92
#!/usr/bin/env python
# -*- coding: utf-8 -*-
def foobar():
sev=raw_input("Chislo dvoichnoy sistemy schisleniya: ") # Вводим число с клавиатуры
lsev=list(sev)
n=len(lsev)-1
dec=0
result=""
f=[]
i=1
if sev <= '000000000000000000000000000000000000000000000000000000000000000000': # Проверка если много нулей
print "Chislo vosmerichnoy sistemy schisleniya: ",0
return
if sev.isdigit()== 0:
print "vi vveli nivirnyu stroku!" #Возвращает ошибку, если хотя бы 1 символ - не число
return
if sev.isalpha() == 1: #Проверка на ввод буквенных значений (True=1) значит есть буква
print "vi vveli bukvu, a doljni chisla!"
return
if sev == '':
print "vi nichego ne vveli" #Проверка на пустое поле ввода
return
else:
while n>=0:
if int(lsev[-n-1]) in range(2): # Проверяем, является ли число двоичным
dec+=int(lsev[-n-1])*2**(n) # Переводим из двоичной в десятичную
n-=1
else: # Сообщаем об ошибке ввода и прекращаем выполнение
print "Vvedennoye chislo ne yavlyayetsya dvoichnym!"
return
while dec>0: # Цикл, создающий список из остатков деления на 8 (перевод в восьмеричную систему)
f.append(dec%8)
dec=dec/8
i+=1
z=len(f)-1
while z>=0: # Созданием из списка и печатаем восьмеричное число
result+=unicode(f[z])
z-=1
print "Chislo vosmerichnoy sistemy scisleniya:",result
foobar()
+78
for (int count = 1; allWord == ""; count++) {
if (num.length() == 4) {
allWord += arrayToTen[Integer.parseInt(num.substring(0,1))-1] + "Thousand"; /
if (Integer.parseInt(num.substring(1,2)) > 0) {
allWord += arrayToTen[Integer.parseInt(num.substring(1,2))-1] + "Hundred";
}
if (Integer.parseInt(num.substring(2,3)) == 0) {
allWord += "And"; // добавдяем просто "And"
}
}
}
часть реализации задачи:
http://projecteuler.net/problem=17
+166
<?php
$count = 0;
foreach($mainResult2 as $r) $count++;
if ($count > 0) echo '...';
?>
проверка не пустой ли массив(объект?).
+173
define("RANDOM_NUM", rand(0, 10000000));
поясню: кодер думал, что каждый раз будет вызываться функция и генерить новое число, т.к. в коде далее идет ее использование как уникального идентификатора. Скорее всего, это один из первых скриптов того, кто писал.
+143
cmp bl,1
je France_jmp
cmp ax,380
je Bulgaria_jmp
cmp ax,383
je Slavonia_jmp
cmp ax,385
je Croatia_jmp
mov bx,400
mov dx,440
call IfAnd
cmp bl,1
je Germany_jmp
jmp next_s
USA_jmp: jmp USA
Grinford_jmp: jmp Grinford
France_jmp: jmp France
Bulgaria_jmp: jmp Bulgaria
Slavonia_jmp: jmp Slavonia
Croatia_jmp: jmp Croatia
Germany_jmp: jmp Germany
next_s:
mov bx,450
mov dx,459
call IfAnd
cmp bl,1
je Japan_jmp
mov bx,460
mov dx,469
call IfAnd
cmp bl,1
je Russia_jmp
cmp ax,471
je Taiwan_jmp
cmp ax,474
je Estonia_jmp
cmp ax,475
je Litvia_jmp
cmp ax,477
jmp next_ss
Japan_jmp: jmp Japan
Russia_jmp: jmp Russia
Taiwan_jmp: jmp Taiwan
Estonia_jmp: jmp Estonia
Litvia_jmp: jmp Latvia
Lithuania_jmp: jmp Lithuania
Philippines_jmp: jmp Philippines
Ukraine_jmp: jmp Ukraine
Moldova_jmp: jmp Moldova
Hongkong_jmp: jmp Hongkong
Britain_jmp: jmp Britain
Greece_jmp: jmp Greece
Cyprus_jmp: jmp Cyprus
Macedonia_jmp: jmp Macedonia
Malta_jmp: jmp Malta
Ireland_jmp: jmp Ireland
Belgium_jmp: jmp Belgium
Portugal_jmp: jmp Portugal
Iceland_jmp: jmp Iceland
Denmark_jmp: jmp Denmark
next_ss:
je Lithuania_jmp
cmp ax,480
je Philippines_jmp
cmp ax,482
je Ukraine_jmp
cmp ax,484
je Moldova_jmp
cmp ax,489
je Hongkong_jmp
Прога для проверки правильности штрих-кодов по контрольной сумме и определение страны-производителя. Про таблицы перехода и near-адресацию конечно в те времена еще не догадывался, только начинал учить асм.
PS: А интерфейс у нее ничего такой был для ассемблера, правда слизал с NU: http://habrastorage.org/storage1/e4efe022/903c7848/d99f7f4f/33d1ed16.png
+147
...
char det(char a[4][4])
{ float det;
det=a[0][0]*(a[1][1]*(a[2][2]*a[3][3]-a[3][2]*a[2][3])-a[1][2]*(a[2][1]*a[3][3]-a[2][3]*a[3][1])+a[1][3]*(a[2][1]*a[3][2]-a[2][2]*a[3][1]))
-a[0][1]*(-a[1][0]*(a[2][2]*a[3][3]-a[3][2]*a[2][3])-a[1][2]*(a[2][0]*a[3][3]-a[3][0]*a[2][3])+a[1][3]*(a[2][0]*a[3][2]-a[3][0]*a[2][2]))
+a[0][2]*(-a[1][0]*(a[2][1]*a[3][3]-a[3][1]*a[2][3])+a[1][1]*(a[2][0]*a[3][3]-a[3][0]*a[2][3])+a[1][3]*(a[2][0]*a[3][1]-a[2][1]*a[3][0]))
-a[0][3]*(-a[1][0]*(a[2][1]*a[3][2]-a[3][1]*a[2][2])+a[1][1]*(a[2][0]*a[3][2]-a[3][0]*a[2][2])-a[1][2]*(a[2][0]*a[3][1]-a[3][0]*a[2][1]));
return(det);
};
...
http://otvet.mail.ru/question/59918103/
+130
private static bool? GetBoolFromObject(object o)
{
return string.IsNullOrEmpty(o.ToString()) ? (bool?)null : (bool)o;
}
и как такое можно только писать...
+157
if ( '' !== $qv['second'] ) {
$this->is_time = true;
$this->is_date = true;
}
if ( '' !== $qv['minute'] ) {
$this->is_time = true;
$this->is_date = true;
}
if ( '' !== $qv['hour'] ) {
$this->is_time = true;
$this->is_date = true;
}
if ( $qv['day'] ) {
if ( ! $this->is_date ) {
$this->is_day = true;
$this->is_date = true;
}
}
if ( $qv['monthnum'] ) {
if ( ! $this->is_date ) {
$this->is_month = true;
$this->is_date = true;
}
}
if ( $qv['year'] ) {
if ( ! $this->is_date ) {
$this->is_year = true;
$this->is_date = true;
}
}
if ( $qv['m'] ) {
$this->is_date = true;
if ( strlen($qv['m']) > 9 ) {
$this->is_time = true;
} else if ( strlen($qv['m']) > 7 ) {
$this->is_day = true;
} else if ( strlen($qv['m']) > 5 ) {
$this->is_month = true;
} else {
$this->is_year = true;
}
}
ВротПресс
+168
#define TPLM Tuple(TPLMOVE) +
#define TPLC Tuple(TPLCOPY) +
#define TPL Tuple() +
//#define GTPL Tuple() +
#define TPLERROR(t) { memcpy(0, 0, 1); }
#define TPLMOVE 1 // copy to tuple, memset 0 original. = destruct dest, copy to dest.
#define TPLCOPY 2 // copy constructor = destruct dest, copy to dest
#define TPLGET 3 // destruct all values :)
#include <memory.h>
#include <math.h>
#include <stdio.h>
#include <typeinfo>
#include <string.h>
#define max(a, b) (((a) > (b)) ? (a) : (b))
#define min(a, b) (((a) < (b)) ? (a) : (b))
unsigned int mcrc(char* name, unsigned int sz){
unsigned int ret=0; if(!sz) sz=(unsigned int)strlen(name);
char*t=name+sz; int p=0;
while(name<t){
*(((char*)&ret)+p)+=*name; p++;
if(p>=4) p=0; name++;
}
return ret;
}
struct Tupled{ unsigned int sz, type; void *v; char data[0]; };
class Tuple{
int count, set, dusz, dasz;
unsigned char *data;
int type; int adel;
public:
Tuple(){ count=0; set=0; type=0; dusz=0; dasz=0; data=0; adel=0; }
Tuple(int t){ type=t; }
~Tuple(){ if(count!=set) TPLERROR("~Tuple"); delete data; }
Tuple(Tuple &t){
count=t.count; set=t.set; dusz=t.dusz; dasz=t.dasz; data=t.data;
t.count=0; t.set=0; t.data=0; adel=1;
}
template <class T>
Tuple& operator+(T &t){ if(!adel) Add(&t, sizeof(t), t); else Del(&t, sizeof(t), t); return *this; }
template <class T>
Tuple& operator-(T &t){ if(!adel) Add(&t, sizeof(t), t); else Del(&t, sizeof(t), t); return *this; }
/* Операторы '*', '/', ',', '>', '<' код идентичен */
template <class T>
void Add(void *v, int s, T &t){
if(dasz-dusz<s+4+(int)sizeof(void*)){
unsigned char *ldata=data;
data=new unsigned char[dasz+max(128, s+4)];
memcpy(data, ldata, dasz);
dasz+=max(128, s);
delete [] ldata;
}
Tupled &d=*(Tupled*)(data+dusz);
d.sz=s;
memcpy(&d.v, v, sizeof(void*));
if(type==TPLCOPY){ *(T*)d.data=t; } else memcpy(d.data, v, s);
if(type==TPLMOVE) t.~T();
d.type=mcrc((char*)typeid(t).name(), 0);
dusz+=sizeof(Tupled)+s; count++;
}
template <class T>
void Del(void *v, int s, T &t){
if(set>=count){ TPLERROR("Tuple::Set"); return ; }
unsigned char *p=GetData(set);
if(!p){ TPLERROR("Tuple::NoData"); return ; }
Tupled &d=*(Tupled*)p;
unsigned int tp=mcrc((char*)typeid(t).name(), 0);
if(tp!=d.type){ TPLERROR("Tuple::TYPE"); return ;}
t.~T();
if(d.sz!=s){ TPLERROR("Tuple::SIZE"); return ;}
memcpy(v, d.data, d.sz);
set++;
}
unsigned char* GetData(int c){
if(c>=count) return 0;
unsigned char *p=data;
for(int i=0; i<c; i++){
p+=sizeof(Tupled)+*(int*)p;
}
return p;
}
};
Очередной самобытный велосипед от микеля.
http://rsdn.ru/forum/src/4218954.aspx