View Full Version : Έλα οι μαθηματικοί και οι προγραμματιστές
Αν έχω καποιο string το οποίο με κάποιο αλγόριθμο κωδικοποιείται σε άλλο string, πώς μπορώ να βρώ ποιός είναι αυτός ο αλγόριθμος δεδομένου ότι μπορώ να κάνω άπειρες προσπάθειες?
Ο κάθε χαρακτήρας πέρνει την ίδια αξία ανάλογα με την θέση που έχει στο string, απο την 17η θέση και μετά οι αξίες επαναλαμβάνονται.
πχ
a = E7
aa = E748
aaa = E74841
aaaa = E74841E1
aaaaa = E74841E1AD
ab = E74B
aba = E74B41
για πείτε.
Harbinger of Death
02-07-2009, 22:40
Εσύ πες περισσότερα.
μπορεί αυτή η λογική να μεταφραστεί σε αλγόριθμο?
Harbinger of Death
02-07-2009, 23:02
Πες περισσότερα για τη λογική ντε. Αλγόριθμος σίγουρα θα υπάρχει, εκτός αν κάποιος σου κάνει πλάκα. Το πως θα τον βρεις, και αν, είναι άλλο θέμα.
μπορεις να φτιαξεις ενα προγραμμα που με το input που θες να φτιαχνει το string που εχεις παρατηρησει.
Φτιαξε πχ ενα lookup table με σειρα 17 τιμες ανα input character που λες και ολο αυτο επι οσους characters θες και μια function που θα βουταει εκει μεσα και τελειωσες.
Αλλιως μπορεις εαν εχεις καποιου το προγραμμα που το κανει ηδη, να κανεις debug και να τον αναπαραγεις (απο assembly)
Τι θες να κανεις, παλι δουλευεις για την εταιρια τσαμπα??
Edit: αν εβγαλα ακρη με την περιγραφη σου στο γραφω σε oracle που γουσταρεις
CREATE TABLE Z_LOOKUP_BOX
AS
SELECT 'a' input, 1 position, 'E7' output FROM DUAL
UNION
SELECT 'a' input, 2 position, '48' output FROM DUAL
UNION
SELECT 'a' input, 3 position, '41' output FROM DUAL
ktl ktl ktl οσα values ξερεις
και μετα φτιαξε μια function που για καποιο input string ανα character κανει Loop και κανει select απο το table να βρει το Output και τα κολλαει ολα μαζι.
ε κλασσικά δουλεύουμε τζάμπα. Την έχω κάνει την υλοποίηση, η ερώτησή μου είναι αν μπορώ την λογική που περιέγραψα παραπάνω να την μετατρέψω σε αλγόριθμο ώστε να το γράψω στα specifications. Δεν μπορώ να το εξηγήσω καλύτερα
o αλγοριθμος ειναι: input, position και βρισκεις το output με βάση το table σου
Αφου θες formality εγω πιστευω οτι εχεις φτιαξει ενα lookup table (http://en.wikipedia.org/wiki/Lookup_table) για τον Caesar's shift cipher (http://en.wikipedia.org/wiki/Caesar_cipher) σου
edit: Εαν οι τιμες που δινεις εχουν σχεση μεταξυ τους μπορεις να το κανεις με function γενικα, την καθε τιμη ανα θεση πως την αποφασισες?
ωραίος, έριξα μια ματιά στο άρθρο για το lookup table, φαίνετε χρήσιμο, θα το ψάξω καλύτερα αύριο γιατί κοιμάμαι όρθιος.
καλα, εαν οι τιμες που δινεις ειναι οτι ναναι βαλε το Lookup table.
Αλλιως μπορεις να φτιαξεις κατι πχ εαν εχεις το 'α' εφαρμοσε καποιες πραξεις με βαση την θεση που εισαι (nPointer) μεσα στο strText
strText = "douleuw_mera_kai_nykta"
For nPointer = 1 to Len(strText)
sCrypt= sCrypt & Chr(Asc(nPointer + Mid(strText, nPointer, 1)) XOR 17)
Next
φτιαξε τις μονες θεσεις με lookup και τις ζυγες με bitwise operations (XOR)
παλι της πλακας ειναι αλλα θα τους ψαρωσεις. Μετα ζητησε ρεπο ομως!
Harbinger of Death
02-07-2009, 23:48
Ντάξει, εγώ κατάλαβα ότι θες να βρεις τον αλγόριθμο που είναι άγνωστος. Πολλά κατασκοπικά βλέπω μάλλον. Πις άουτ.
BURNIN AMBITION
03-07-2009, 04:20
4
Powered by vBulletin® Version 4.2.3 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.