Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Kontrolni broj za poziv na broj po modulu 97, funkcija ili procedura?

[es] :: Pascal / Delphi / Kylix :: Kontrolni broj za poziv na broj po modulu 97, funkcija ili procedura?

[ Pregleda: 15679 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

inherited
Novi Sad

Član broj: 95516
Poruke: 219
212.200.180.*



Profil

icon Kontrolni broj za poziv na broj po modulu 97, funkcija ili procedura?09.01.2007. u 16:55 - pre 2873 dana i 15h

Treba mi funkcija ili procedura na osnovu koje se racuna obican kontrolni broj. U TEdit se unesu slova i/ili brojevi, u drugom TEDit - je broj 97 a u trcem treba dobiti izracunati broj?

 
Odgovor na temu

de_c0der

Član broj: 127698
Poruke: 107
*.adsl.net.t-com.hr.



Profil

icon Re: Kontrolni broj za poziv na broj po modulu 97, funkcija ili procedura?09.01.2007. u 21:03 - pre 2873 dana i 11h
Ne kontam, kako slova/brojevi, kako ces zbrojit 'aaa' sa 97?

Postavi 3 edita na formu i nesto ovako:
Code:

Edit2.text:='97';
Edit3.text:=IntToStr(StrToInt(Edit1.text)+StrToInt(Edit2.text));


ne kontam sta ce ti to...
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

Član broj: 4934
Poruke: 1839
*.dialup.neobee.net.

Sajt: www.a3but.info


Profil

icon Re: Kontrolni broj za poziv na broj po modulu 97, funkcija ili procedura?09.01.2007. u 21:09 - pre 2873 dana i 11h
Laptopovi

Znam da se vi Delphi programeri "gadite" od VB-a, ali posto su tvoje kolege ocigledno neraspolozene da ti pomognu, evo ti resenje u VB 6.0 http://www.elitesecurity.org/t221589-0#1315556

Nadam se da ces prevazici neprijatnost jezika i uspeti da prevedes na Pascal
Besplatni programi i komponente

www.a3but.info

Komercijalni programi za privredu i budzetske korisnike

www.clickersoftware.com
 
Odgovor na temu

dogriz
Sombor

Član broj: 29744
Poruke: 248
*.so-sombor.com.

Sajt: dogriz.blogspot.com


Profil

icon Re: Kontrolni broj za poziv na broj po modulu 97, funkcija ili procedura?10.01.2007. u 08:07 - pre 2873 dana
Zna li neko po kom modelu se računa kontrolni broj za PIB? Isto model 97? Možda model 11?
Ako neko zna, neće mi smetati ni ako je primer urađen u VB ;)

Treba mi otprilike sledeće: "kontrolni broj"-oznaka opštine-PIB (oznaka opštine je npr. 232 (Sombor))
 
Odgovor na temu

inherited
Novi Sad

Član broj: 95516
Poruke: 219
*.kalik.info.



Profil

icon Re: Kontrolni broj za poziv na broj po modulu 97, funkcija ili procedura?10.01.2007. u 15:22 - pre 2872 dana i 17h
Hvala na odgovorima, ali posto sam tek uplivao u vode Delphi programiranja, tesko da bih samostalno mogao prevesti kod iz VB u Delphi.
Dobro, ako ima neko jos neko resenje, bio bih zahvalan.

Edit: googlao sam, al nisam nasao nista konkretno, jedino da sami nesto sklepamo, po nekoj formuli (koliko sam skontao koristi se 97, sifra opstine i jos nesto u kombinaciji!?)
 
Odgovor na temu

Whois

Član broj: 92214
Poruke: 37
195.252.79.*



Profil

icon Re: Kontrolni broj za poziv na broj po modulu 97, funkcija ili procedura?10.01.2007. u 21:21 - pre 2872 dana i 11h
Ajde da pokusam da prevedem na brzaka (onko malo pijan :) )

Uputio te je na ovo:

Code:

Public Function KontrolniBroj(ByVal inModel As Variant, ByVal inTekst As String) As String
    Dim varInput_Value As Variant
    Dim varResult As Variant
    
    KontrolniBroj = ""
    If inTekst = "" Then Exit Function
    
    ObradiTekst inTekst
    If Not IsNumeric(inTekst) Then Exit Function
    
    varInput_Value = CDec(inTekst) * 100
    varResult = CDec((varInput_Value / inModel) - Fix(varInput_Value / inModel))
    varResult = Round(varResult, 2)
    varResult = inModel + 1 - Round(varResult * inModel)
    
    KontrolniBroj = CStr(varResult)
    If Len(KontrolniBroj) = 1 Then
        KontrolniBroj = "0" & KontrolniBroj
    End If
    
End Function
Private Sub ObradiTekst(ByRef inTekst As String)
   Dim Slova
   Dim Vrednosti
   
   Dim intBrojac As Integer
   Dim intBrojac2 As Integer
   Dim strTMP As String
   
   inTekst = UCase(inTekst)
   strTMP = ""
   
   Slova = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", _
                 "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", _
                 "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", _
                 "U", "V", "W", "X", "Y", "Z")
   
   Vrednosti = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", _
                     "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", _
                     "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", _
                     "30", "31", "32", "33", "34", "35")
   
   For intBrojac = 1 To Len(inTekst)
      For intBrojac2 = 0 To UBound(Slova)
         If Mid(inTekst, intBrojac, 1) = Slova(intBrojac2) Then
            strTMP = strTMP & Vrednosti(intBrojac2)
         End If
      Next
   Next
   
   inTekst = strTMP
   
End Sub



A to bi trebalo da bude ovo (a ti ispravi sigurno ima poneka greska):
Code:


prvo idemo da obradimo string i da slova pretvorimo u cifre


function Obradi(s: string): string;
var
 i: integer;
begin
 s:=trim(uppercase(s));
 result :='';
 for i:=1 to length(s) do
    if  (s[i]>='0') and (s[i]<='9') then
      result :=result +s[i]
   else if (s[i]>='A') and (s[i]<='Z') then
     result := result+inttostr(10+chr(s[i])-65);
end;

da kazemo da je to isto kao ona funkcija dole
idemo na racunanje:

function KB(k, br: string): string;
var
 kontbr, inval, res:double;
begin
 kontbr:=strtofloat(k);
 inval := strtofloat(obradi(br))*100;
 res:= roundto((inval/kontbr)-trunc(inval/kontbr),2);
 res:=kontbr+1-round(res*kontbr);
 result := rightstr(' '+floattostr(res),2);
end;





tako nekako...
naravno ovo ti nece raditi sa jako velikim brojevima.
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Kontrolni broj za poziv na broj po modulu 97, funkcija ili procedura?

[ Pregleda: 15679 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.