zahlenproblem



  • ich hab mal ne frage: wie kann man aus ner ganz großen x-beliebigen zahl eine eindeutige 4-stellige zahl machen (wenns geht ohne teilen)?
    danke schon mal im voraus 🙂


  • Mod

    Nein. Es gibt nämlich viel mehr ganz große Zahlen als es vierstellige Zahlen gibt.

    edit: Beziehungsweise doch. Ich bezog mich auf den Begriff eineindeutig. Bin mir nicht sicher, ob du das meinst. Du kannst einfach modulo 9000 + 1000 rechnen, dann bekommst du eindeutig eine vierstellige Zahl. Es gibt dann aber viele Zahlen, die auf die gleiche vierstellige Zahl abgebildet werden.



  • falls die Zahl als int/long vorliegt so z.B. mit x=zahl&0x1fff;
    Eindeutig ist das natürlich nur in der Richtung zahl->x und nicht umgekehrt.



  • ja, jetzt verstehe ich das auch..dankeschön. aber jetzt unser ganzes problem, sonst lösen wir es nie: wir haben einen fortlaufenden betriebsstundenzähler und eine eindeutige vierstellige seriennnummer und aufgrund dieser zahlen hätten wir gerne für eine passwortabfrage eine eindeutige vierstellige zahl..geht das und kannst du uns helfen?


  • Mod

    Für eine Passwortabfrage auf dieser Basis empfehle ich generell das Passwort für meinen Reisekoffer zu nehmen: "1234". Das hat bisher noch niemand geknackt, ist also bewiesenermaßen sicher.



  • ja das stimmt, 1234 ist sehr sicher aber das brauchen wir leider nicht... leute mieten eine maschine und nach einer bestimmten zeit läuft diese nicht mehr und man muss dieses passwort eingeben, das maschinenbedingtnicht mehr als 4 ziffern haben darf..hast du vielleicht noch nen anderen tip?



  • Dieser Thread wurde von Moderator/in SeppJ aus dem Forum C++ (auch C++0x) in das Forum Rund um die Programmierung verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


  • Mod

    Kannst du deine Problemstellung etwas genauer erläutern? Ich werde aus deiner Beschreibung nicht so ganz schlau. Am besten mit Groß-/Kleinschreibung und richtiger Grammatik, dann kommen weniger Unklarheiten auf.



  • Was gefällt dir an Modulo 10000 (ggf. mit führenden Nullen auffüllen) nicht?



  • Nein, es hat sich erledigt, wir nehmen das mit dem zahl&0x1FFF..Aber trotzdem danke für die Hilfe 🙂


Log in to reply