Mario: Dezimalzahlen in Hexadezimal und Binär umrechnen

Hallo,

wie kann ich Dezimalzahlen in Hexadezimal und Binär umrechnen mittels Javascript brauche eine einfache variante.

Gruss

  1. wie kann ich Dezimalzahlen in Hexadezimal und Binär umrechnen mittels Javascript brauche eine einfache variante.

    Das hättest du schneller haben können: javascript hex -> erstes Ergebnis

    var i = 15;
    i.toString(16); // Ausgabe "f"
    i.toString(2);  // Ausgabe "1111"

    1. wie kann man das mit anderen zahlen umrechnen lassen?

      Gruss

      1. wie kann man das mit anderen zahlen umrechnen lassen?

        Falls du in

        var i = 15;
        i.toString(16); // Ausgabe "f"
        i.toString(2);  // Ausgabe "1111"

        nicht einmal eine andere Zahl einsetzen kannst, solltest du als Erstes Programmieren lernen. Sprache ist egal.

        Falls dir ein HTML-Formular vorschwebt, suche hier in der Anleitung nach HTML-Formularen sowie im Javascript-Kapitel, wie Formulare aus Javascript heraus abgefragt werden können.

        1. doch mit prompt gebe ich eine zahl ein aber genau die gibt er mir dann raus

          1. Hallo,

            doch mit prompt gebe ich eine zahl ein aber genau die gibt er mir dann raus

            Ja, weil dir prompt() einen String zurückgibt.

            toString() von einem String gibt den String unverändert zurück. Zahlen (Typ Number) haben auch eine toString-Methode, nur diese ermöglicht eine Zahlensystem-Umwandlung. Der String muss also in eine Zahl umgewandelt werden.

            Das Umwandeln in einen Number-Wert geht z.B. mit der Number(…)-Funktion:

            var input = prompt('…');  
            input = Number(input);  
            alert(input.toString(16));
            

            Mathias

    2. gibt es schon bereits fertige scripte?

      Gruss

      1. Om nah hoo pez nyeetz, Mario!

        gibt es schon bereits fertige scripte?

        Mit Sicherheit, hier allerdings nur ganz selten.

        Matthias

        --
        Der Unterschied zwischen Java und JavaScript ist größer als der zwischen Sau und Sauron.

  2. Hier ist in PHP ein Ansatz für etwas mehr als das, was Du in Javascript suchst (Du musst es nur umschreiben...):

    <?php  
      
    function getBigNumArray() {  
    # Das Zahlensystem besteht aus den Elementen ...  
    return 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','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');  
    # test hexadezimal: return array ('0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f');  
    # test oktal: return array ('0','1','2','3','4','5','6','7','8');  
    # test dual: return array('0','L');  
    }  
      
    function getBigNumHash() {  
    # kehrt den Array um. Es entsteht ein "hash"  
    	$ar=getBigNumArray();  
    	$i=0;  
    	foreach ($ar as $element) {  
    		$hash[$element]=$i++;  
    	}  
    return $hash;  
    }  
      
    function getNumberFromString($str) {  
    # gibt die dezimale Entsprechung der Zahl aus dem beliebigen Zahlensystem zurück  
    	$hash=getBigNumHash();  
    	$number=0;  
    	$length=strlen($str);  
    	for ($i=$length; $i>0; $i-- ) {  
    		$inv=$length-($i);  
    		$char=$str{($i-1)};  
    		if ($hash[$char] != 0) {  
    			$add=pow(count($hash),$inv)*($hash[$char]);  
    		} else {  
    			$add=0;  
    		}  
    		$number=$number+$add;  
    	}  
    return $number;  
    }  
      
      
    function getStringFromNumber($int) {  
    # gibt die Zahl als eine aus dem beliebigen Zahlensystem zurück  
    	$ar=getBigNumArray();  
    	$length=count($ar);  
    	$str='';  
    	$positions=0;  
    	while ( pow($length, ($positions)) <= $int) {  
    		$positions++;  
    	}  
    	for ($i=$positions; $i>0; $i--) {  
    		$potenz = pow($length, $i-1);  
    		$pos = floor($int/$potenz);  
    		$int = $int % $potenz;  
    		$str = $str . $ar[$pos];  
    	}  
    return $str;  
    }
    

    Jörg Reinholz