Ginger
Terugkerende gebruiker
- Lid geworden
- 29 dec 2006
- Berichten
- 2.972
Nav een vraag hier op het forum (kan 'm ff niet meer vinden...) ben ik bezig geweest met het ROT Cipher systeem. Voor het Geo Cachen had ik al ooit in Excel iets gebouwd met ROT13. Deze is niet zo moeilijk omdat je altijd kan "doortellen" met 13. Of je nou Decrypt en Encrypt. Maar als je met een andere sleutel dan 13 gaat werken, wordt het een ander verhaal. De "heenweg" (dus: ROT13 A = N; of: ROT2 Z = B) heb ik al weten aan te maken. Dit heb ik gedaan via de MOD functie (MOD(letterwaarde - 64 + ROTwaarde;26)). Ik zit nu op m'n werk en heb m'n voorbeeld thuis (schiet dus niet op voor een heldere bijlage ), maar kan die vanavond ff plaatsen.
Mijn bedachte oplossing in het geheel is dus dat je binnen de getallen 1 t/m 26 "rondjes" moet kunnen draaien. En dat dus "heen en weer". De terugweg gaat mis bij mij omdat dan de "nul" er tussen zit (26 mod 26 = 0 en daar zou ik 26 willen zien) en daardoor de MOD functie niet goed werkt.
Hoe kan ik het dus voor elkaar krijgen dat:
(doortellen)
ROT13
1 + 13 = 14
12 + 13 = 25
22 + 13 = 9
ROT6
1 + 6 = 7
12 + 6 = 18
22 + 6 = 2
(terugtellen)
ROT13
22 - 13 = 9
12 - 13 = 25
1 - 13 = 14
ROT6
1 - 6 = 21
12 - 6 = 6
22 - 6 = 16
Via IF structuren heb ik dit geregeld. Waarmee ik wil zeggen dat ik puur zoek naar het "rondjes draaien" in die getallen van 1 t/m 26...
De oplossing is nodig voor VBA, maar als er een formule-kunstenaar is die die gedaan krijgt is dat óók gaaf natuurlijk.
P.s. voor de liefhebbers hierbij nog een URL naar een site met een voorbeeld voor het ROT cipher systeem
Mijn bedachte oplossing in het geheel is dus dat je binnen de getallen 1 t/m 26 "rondjes" moet kunnen draaien. En dat dus "heen en weer". De terugweg gaat mis bij mij omdat dan de "nul" er tussen zit (26 mod 26 = 0 en daar zou ik 26 willen zien) en daardoor de MOD functie niet goed werkt.
Hoe kan ik het dus voor elkaar krijgen dat:
(doortellen)
ROT13
1 + 13 = 14
12 + 13 = 25
22 + 13 = 9
ROT6
1 + 6 = 7
12 + 6 = 18
22 + 6 = 2
(terugtellen)
ROT13
22 - 13 = 9
12 - 13 = 25
1 - 13 = 14
ROT6
1 - 6 = 21
12 - 6 = 6
22 - 6 = 16
Via IF structuren heb ik dit geregeld. Waarmee ik wil zeggen dat ik puur zoek naar het "rondjes draaien" in die getallen van 1 t/m 26...
De oplossing is nodig voor VBA, maar als er een formule-kunstenaar is die die gedaan krijgt is dat óók gaaf natuurlijk.
P.s. voor de liefhebbers hierbij nog een URL naar een site met een voorbeeld voor het ROT cipher systeem
Laatst bewerkt: