[LUGOS-PROG] bijektivna preslikava iz stringa v int

Uroš Gaber uros.gaber at powercom-si.com
Wed Jan 9 16:03:09 CET 2002


Lahko se pa spodnjo funckijo malce priredi in potem je vedno razlicna
cifra...

function genKey(key: string): integer;
var keyc: integer;
begin
  for i:=1 to length(key) do
    keyc:=keyc+ord(key[i])*i;
  genKey:=keyc;
end;

exampli:
genKey('ab') --> 293
genKey('ba') --> 292
...

Lep pozdrav!

Uroš Gaber
PowerCom Gaber & Globočnik d.n.o. <http://www.powercom-si.com> 
Kersnikova 6, 1234 Mengeš, Slovenia
P.E.: Cesta talcev 19b, 1230 Domžale, Slovenia
Mobile: +386 (0)40 848-001
Fax: +386 (0)40 848-026
Phone office: +386 (0)1 724-84-26
Fax office: +386 (0)1 724-84-27
eMail: uros at powercom-si.com <mailto:uros at powercom-si.com> 



-----Original Message-----
From: Primož Gabrijelčič [mailto:gabr at 17slon.com] 
Sent: Wednesday, January 09, 2002 3:40 PM
To: lugos-prog at lugos.si
Subject: RE: [LUGOS-PROG] bijektivna preslikava iz stringa v int


> Najlazje da ga izracunas na podlagi ASCII kod iz stringa:
> function genKey(key: string): integer;
> var keyc: integer;
> begin
>   for i:=1 to length(key) do
>     keyc:=keyc+ord(key[i]);
>   genKey:=keyc;
> end;

Hmm, tole je daleč od bijektivnosti.

Hint: genKey('ab') = genKey('ba')

Pozdrav,
    Gp

 =WinGpT= Cogito ergo spud: I think therefore I yam.




More information about the lugos-prog mailing list