The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"кто шарит в Perl ! помогите !"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"кто шарит в Perl ! помогите !"  
Сообщение от _seal email(??) on 06-Сен-06, 19:12 
Народ, кто в перле шарит, помогите разобраться!
вот есть програмуля которая считает hash

#!/usr/bin/perl -l
use Math::BigInt;
chomp($a = pop);
die "Usage: $0 <email address>\n"
unless defined $a;
$h = Math::BigInt->new(5381);
$h = ($h + ($h << 5)) & 0xffffffff ^ ord($_)
   for split //, lc($a);
print 'hash value: ', $h % 53;

напишите чайнику в перле формулу!

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "кто шарит в Perl ! помогите !"  
Сообщение от mail on 07-Сен-06, 11:40 
>Народ, кто в перле шарит, помогите разобраться!
>вот есть програмуля которая считает hash
>
>#!/usr/bin/perl -l
>use Math::BigInt;
>chomp($a = pop);
>die "Usage: $0 <email address>\n"
>unless defined $a;
>$h = Math::BigInt->new(5381);
>$h = ($h + ($h << 5)) & 0xffffffff ^ ord($_)
>   for split //, lc($a);
>print 'hash value: ', $h % 53;
>
>напишите чайнику в перле формулу!


для каждой буквы из email выполнить $h = ($h + ($h << 5)) & 0xffffffff ^ ord($_)
где ord($_) код буквы, $h = 5381, операции из << & ^ в любого учебника
результат очень большое число, сколько разрядов надо читать Math::BigInt на cpan.org

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

2. "кто шарит в Perl ! помогите !"  
Сообщение от _seal email(??) on 07-Сен-06, 11:48 
>>Народ, кто в перле шарит, помогите разобраться!
>>вот есть програмуля которая считает hash
>>
>>#!/usr/bin/perl -l
>>use Math::BigInt;
>>chomp($a = pop);
>>die "Usage: $0 <email address>\n"
>>unless defined $a;
>>$h = Math::BigInt->new(5381);
>>$h = ($h + ($h << 5)) & 0xffffffff ^ ord($_)
>>   for split //, lc($a);
>>print 'hash value: ', $h % 53;
>>
>>напишите чайнику в перле формулу!
>
>
>для каждой буквы из email выполнить $h = ($h + ($h <<
>5)) & 0xffffffff ^ ord($_)
>где ord($_) код буквы, $h = 5381, операции из << & ^
>в любого учебника
>результат очень большое число, сколько разрядов надо читать Math::BigInt на cpan.org

поле в mysql базе куда заносится результат TINYINT 3


Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

3. "кто шарит в Perl ! помогите !"  
Сообщение от _seal email(??) on 07-Сен-06, 11:49 
>
>где ord($_) код буквы, $h = 5381, операции из << & ^

а что значить код буквы? какой ?

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру