- 1
define("OUTPUT_DIR_CSV", "kokoko/kukarek/files" . DIRECTORY_SEPARATOR);
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+168
define("OUTPUT_DIR_CSV", "kokoko/kukarek/files" . DIRECTORY_SEPARATOR);
+156
(function(G, D) {
"use strict";
var $ = G.jQuery,
listener;
function addListener(elem, fn) {
function handler(event) {
event = event || G.event;
var dx = event.DeltaX || event.wheelDeltaX || event.detail || 0,
dy = event.DeltaY || event.wheelDeltaY || event.detail || 0;
event.dx = dx === 0 ? 0 : dx / Math.abs(dx);
event.dy = dy === 0 ? 0 : dy / Math.abs(dy);
fn(event);
}
if (elem.addEventListener) {
if (D.hasOwnProperty('onwheel')) { //Modern browsers
listener = "wheel";
} else if (D.hasOwnProperty('onmousewheel')) { //Old browsers
listener = "mousewheel";
} else { //FF<17
listener = "MozMousePixelScroll";
}
elem.addEventListener(listener, handler, false);
} else { //IE<9
elem.attachEvent("onmousewheel", handler);
listener = "onmousewheel";
}
}
function removeListener(elem) {
if (elem.removeEventListener) {
elem.removeEventListener(listener);
} else {
elem.detachEvent(listener);
}
}
$.fn.mousewheel = function(fn) {
return this.each(function() {
addListener(this, fn);
});
};
$.fn.unmousewheel = function(fn) {
return this.each(function() {
removeListener(this, fn, false);
});
};
}(this, document));
Написал плагин для jQuery, который цепляет на элементы обработчик события вращения колесика мыши. Что скажете? Как бы вы написали функцию unmousewheel()?
+135
private void Button2_Click(object sender, EventArgs e)
{
this.Label4.Text = new StreamReader("C:\\Program Files\\Microsoft Visual Studio 10.0\\VB\\VBProjects\\датаметр\\датаметр\\bin\\Release\\Key.txt").ReadLine();
if (Operators.CompareString(this.Label4.Text, "vrc5rhhgyuuoxr45", false) == 0)
{
this.Button1.Visible = true;
this.TextBox1.Visible = true;
this.Label1.Visible = true;
this.Label4.Visible = false;
this.Button2.Visible = false;
this.Label3.Visible = true;
int num = (int) Interaction.MsgBox((object) "Ключ верный.\r\nНе сообщайте его никому !!\r\nИ не потеряйте.", MsgBoxStyle.OkOnly, (object) null);
}
else
this.Label4.Text = "Ключ не верный !!\r\nПоменяйте его в файле \"Key\"";
}
Классное расположение файла. Причём в архиве лежит пустой файл Key.txt рядом с программой...
Как надо было извратиться, чтобы в коде оказался не просто абсолютный путь, но и вот такой-вот с Program Files, ведь по умолчанию VS создаёт проекты в Моих документах
http://www.cyberforum.ru/vb-net/thread971437.html
+134
using System;
using System.Security.Cryptography;
namespace sha1_calc
{
class Program
{
static void Main(string[] args)
{
SHA1 sha = new SHA1CryptoServiceProvider();
foreach (var fname in args)
{
Console.WriteLine("file: " + fname);
try
{
System.IO.FileStream fs = System.IO.File.Create(fname);
byte [] res = sha.ComputeHash(fs);
fs.Close();
Console.Write("0x");
foreach (var i in res)
{
Console.Write(i.ToString("X"));
}
Console.WriteLine();
Console.WriteLine("---------------------------------");
}
catch(Exception e)
{
Console.WriteLine("error: " + e);
}
}
Console.ReadKey();
}
}
}
Скачал парочку образов и решил проверить их чексуммы. Протестировал программу на скачанных файлах. Удивился, почему же у них хеши одинаковые?
+97
program Project42;
{$APPTYPE CONSOLE}
uses
SysUtils, Math;
const
Radix = 10;
function čòũʼnť(N: Integer): Integer;
begin
Result := 0;
while N > 0 do
begin
N := N div Radix;
Inc(Result);
end;
end;
function count(N: Integer): Integer;
begin
// Result := Ceil(LogN(Radix, N)); { slow! }
Result := Ceil(Log10(N));
end;
function rdtsc: Int64;
asm
rdtsc
end;
var
I: Integer;
t0: Int64;
const
N = 100500;
begin
try
Assert((count(42) = čòũʼnť(42)) and (count(100500) = čòũʼnť(100500)));
t0 := rdtsc;
for I := 1 to N do
čòũʼnť(Random(MaxInt + 1));
Writeln('naïve: ', rdtsc - t0, ' ticks');
t0 := rdtsc;
for I := 1 to N do
count(Random(MaxInt + 1));
Writeln('prőper: ', rdtsc - t0, ' ticks');
Writeln(StringOfChar('-', 42));
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
if DebugHook <> 0 then
begin
Write('any big key to exit...');
Readln;
end;
end.
{ http://imgs.xkcd.com/comics/haiku_proof.png :-P }
матан > метан
O(1) > O(N)
логарифм > байтоёбства с делением
+1
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a[4] = {1, 2, 3, 4};
int (*a_p1)[4] = (int (*)[4])a;
int (*a_p2)[4] = &a;
for(size_t i = 0; i < 4; ++i)
{
printf("%p -> %d; %p -> %d\n", &(*a_p1)[i], (*a_p1)[i], &(*a_p1)[i], (*a_p2)[i]);
}
return EXIT_SUCCESS;
}
Вот такой вывод:
0x7ffee4ebd950 -> 1; 0x7ffee4ebd950 -> 1
0x7ffee4ebd954 -> 2; 0x7ffee4ebd954 -> 2
0x7ffee4ebd958 -> 3; 0x7ffee4ebd958 -> 3
0x7ffee4ebd95c -> 4; 0x7ffee4ebd95c -> 4
0
pub fn take(end: u32) -> u32
{
(0..).step_by(1000000000)
.map(|i| i * i)
.take_while(|&i| i < end)
.sum()
}
pub fn filter(end: u32) -> u32
{
(0..).step_by(1000000000)
.map(|i| i * i)
.filter(|&i| i < end)
.sum()
}
Решил вернуться к изучению багра rust.
Суть такова: код с take_while выводит 0, код с filter падает с runtime error или выбрасывается rustClang как бесконечный цикл (зависит от версии).
https://ideone.com/IS05Q0
То есть код filter ма-те-ма-ти-че-ски эквивалентен take_while. Поскольку i² монотонно возрастающая функция.
Из примера ниже можно убедиться что цикл на самом деле конечен.
https://ideone.com/xC2r35
Счётчик кидает ошибку при переполнении и range не зацикливается.
for x in (1..).step_by(1000000000) {
println!("{}", x);
}
1
1000000001
2000000001
Runtime error #stdin #stdout #stderr 0.01s 5552KB
+1
Пост SQL-проблем.
Собственно, никогда за весь свой опыт я не использовал join. Большое кол-во выпускников гикбрейнсов говорит, "бла бла бла, джойн даёт нихуёвый перформанс по сравнению с этими вашими инлайн выборками".
Но конечно гикбрейнсы не понимают, что джойн - не панацея, и блочить реляционку пока она тебе не найдет все связи - по меньшей мере тупо. Ровно как и не понимают, что перформанс им даст нормальный кэш
который джуны так не любят использовать, или используют криво(кэшируют целые запросы, а не возвращаемые объекты).
Уважаемые говнокодеры, как вам данный высер?
+3
m =: 256$0
index =: 0
output =: 0$0
input =: 0$0
code =: 0$0
cycles =: 0$0
codeIndex =: 0
setCode =: 3 : 'code =: transform y'
transform =: '><+-.,[]'&i.
preset =: 3 : 'cycles =: 0$0 [ codeIndex =: 0 [ output =: 0$0 [ m =: 256$0 [ index=:0'
returnOutput =: 3 : 'output { a.'
changeValue =: 3 : 'm =: (index&{.,y,(>:index)&}.) m'
addCodeIndex =: 3 : 'codeIndex =: (>: codeIndex)'
setCodeIndex =: 3 : 'codeIndex =: {: cycles'
deleteCycle =: 3 : 'cycles =: }: cycles'
func_1 =: 3 : 'index =:256&|@>:index'
func_2 =: 3 : 'index =:256&|@<:index'
func_3 =: 3 : 'changeValue@(256&|)@>:@(index&{) m'
func_4 =: 3 : 'changeValue@(256&|)@<:@(index&{) m'
func_5 =: 3 : 'output=:output, ((index&{) m)'
func_6 =: 3 : '(input =: }.input)[ changeValue(256&|@{.input)'
func_7 =: 3 : 'cycles =: cycles&, codeIndex'
func_8 =: 3 : '(setCodeIndex`deleteCycle@.(0&=))@(index&{) m'
doAction =: func_1`func_2`func_3`func_4`func_5`func_6`func_7`func_8@.]
doInstuction =: 3 : '(doAction[addCodeIndex)@{.@(codeIndex&{) code'
ExitCond =: 3 : 'codeIndex = (# code)'
interpreter =: 3 : '(((,&1 [ doInstuction )`0: @. ExitCond)^:_) 0'
brainFuck =: returnOutput [ interpreter [ setCode [ preset
brainFuck '++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.'
интерпретатор брейнфака на J
+145
public string define(string content)
{
int till;
char[] CharArr = content.ToCharArray();
for (int i = 0; i < CharArr.Length; i++)
{
if (CharArr[i] == 'i')
{
till = i;
}
}
string Re = content.Substring(0,till);
return Re;
}
С тостера. Я рыдал.