Forum » Programiranje » [SQL] Algoritem
[SQL] Algoritem
greentech ::
V SQL moram napisat naslednji algoritem:
Imam 17-mestno cifro tipa varchar. Iz teh 17 cifer moram izračunat 18. kontrolno cifro in sicer po naslednjem postopku:
- prva in nato vsaka druga cifra se ponoži(1,3,5 itd..) z 3
- druga in nato vsak druga cifra(2,4,6 itd..) se ponoži z 1-v bistvu množenje ni potrebno
- torej če imamo 3 7 6 1 0 4 2 5 0 0 2 1 2 3 4 5 6
- množimo z 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3
- dobimo 9 7 18 1 0 1 6 1 0 0 6 1 6 3 12 5 18
- potem seštejemo cifre in dobimo vsoto 101
- vsoto odštejemo od najbližjega večkratnika desetice(v tem primeru 110) in dobimo kontrolno številko 9 -->110 -101 =9
Najbolj me muči kako ugotovit kateri je je najbližji večkratnik desetice, ostalo bi nekako še šlo. Predvidevam da bi moral uporabiti eno FOR zanko, ki bi se sprehodila čez niz števil in izvajala množenje. Vendar še nikoli nisem delal z FOR zanko v SQL pa niti ne točno kaka je sintaksa in če se sploh uporabljajo FOr stavki v SQL.
V glavenm to je to--vem da je problem najbrž dokaj zahteven(vsaj menis e zdi), ne pričakujem rešitve naloge, vendar bom zadovoljen že z namigi, kako se lotit zadeve.
Hvala in LP
Hvala
Imam 17-mestno cifro tipa varchar. Iz teh 17 cifer moram izračunat 18. kontrolno cifro in sicer po naslednjem postopku:
- prva in nato vsaka druga cifra se ponoži(1,3,5 itd..) z 3
- druga in nato vsak druga cifra(2,4,6 itd..) se ponoži z 1-v bistvu množenje ni potrebno
- torej če imamo 3 7 6 1 0 4 2 5 0 0 2 1 2 3 4 5 6
- množimo z 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3
- dobimo 9 7 18 1 0 1 6 1 0 0 6 1 6 3 12 5 18
- potem seštejemo cifre in dobimo vsoto 101
- vsoto odštejemo od najbližjega večkratnika desetice(v tem primeru 110) in dobimo kontrolno številko 9 -->110 -101 =9
Najbolj me muči kako ugotovit kateri je je najbližji večkratnik desetice, ostalo bi nekako še šlo. Predvidevam da bi moral uporabiti eno FOR zanko, ki bi se sprehodila čez niz števil in izvajala množenje. Vendar še nikoli nisem delal z FOR zanko v SQL pa niti ne točno kaka je sintaksa in če se sploh uporabljajo FOr stavki v SQL.
V glavenm to je to--vem da je problem najbrž dokaj zahteven(vsaj menis e zdi), ne pričakujem rešitve naloge, vendar bom zadovoljen že z namigi, kako se lotit zadeve.
Hvala in LP
Hvala
Red_Mamba ::
(floor(N / 10) + 1) * 10 = 110
lahko pa kar direkt zračunaš R = (floor(N / 10) + 1) * 10 - N
kjer je N v tvojem primeru 101
to ti da 110 za vse med 100 in 109, če sem te prav razumel to rabiš
lahko pa kar direkt zračunaš R = (floor(N / 10) + 1) * 10 - N
kjer je N v tvojem primeru 101
to ti da 110 za vse med 100 in 109, če sem te prav razumel to rabiš
[st.slika https://img.shields.io/badge/Slo-Tech-green.svg test]
Linkedin >> http://goo.gl/839Aua
Mamba's Crypto & ICO's: https://t.me/joinchat/AAAAAExTkO4P4UDy0fIZdg
Linkedin >> http://goo.gl/839Aua
Mamba's Crypto & ICO's: https://t.me/joinchat/AAAAAExTkO4P4UDy0fIZdg
Zgodovina sprememb…
- spremenil: Red_Mamba ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | pra števila.. (strani: 1 2 )Oddelek: Znanost in tehnologija | 8813 (5152) | Yacked2 |
» | Matematika - pomoč (strani: 1 2 3 )Oddelek: Šola | 26838 (23413) | daisy22 |
» | Algoritem za zapis kombinacijOddelek: Programiranje | 1937 (1666) | WarpedGone |
» | Rusko množenje (strani: 1 2 )Oddelek: Znanost in tehnologija | 10821 (7945) | fireice |
» | 1 = 0.9999999999 ... ! :)Oddelek: Znanost in tehnologija | 2806 (1669) | bjelakrez |