Gå til innhold

10 tallsystem til n-tallsystem


Anbefalte innlegg

Hei, jeg funderer litt på hvordan jeg kan lage en funksjon som gjør et tall i ti tallsystemet om til et i et gitt tallsystem.

 

Foreksempel: 10 (ti) = 13 (syv)

 

Vet at det er Grunntallet og potensen som avgjør, men potens er ikke så brukervenlig i php....

 

Har noen en ide om hvordan dette kan gjøres ?

 

har prøvd meg på en funksjon, men jo mer jeg skrev på den, jo mer rotete ble den og jo mere problemer oppdaget jeg ettervert...

function covertToNr($nr, $grunntall) {
 $nfactor = 0;
 $potens = 0;
 $rest = $nr;
 
 while( $rest > 0) {
   $nfactor = 1;

while ($nfactor <= ($grunntall-1)) {
  if ($potens == 0) { $TGrunntall = 1; }
  else { $TGrunntall = $grunntall;  }
  
  $pot = 0;
  while ($pot < $potens) {
    $TGrunntall = $TGrunntall*$TGrunntall;
 $pot++;
  }
  
  $tempRest = $rest - $nfactor*$TGrunntall;
  $tempAction = "";
  
  if ($tempRest > 0) {
    $TempMem = $nfactor;
 if ($nfactor == ($grunntall-1)) {
   $output .= $nfactor;
   $tmpAction = "w";
   $rest = $tempRest;
 }
  }
  if ($tempRest < 0) {
    
 if (($nfactor-1) == $TempMem) {
   if ($tmpAction !== "w") {
       $output .= $TempMem;
 	$rest = $rest - ($TempMem * $TGrunntall);
     $tmpAction = "w";
   }
 }
 else {
   $tmpNfactor = $nfactor-2;
   
   while($tempRest < 0) {
     if ($tmpNfactor >= 0) {
    $tempRest = $tmpNfactor*$TGrunntall;
    
    if ($tempRest > 0) {
      $output .= $tmpNfactor;
   $rest = $TempRest;
   $tmpAction = "w";
    }
 	}
 	$tmpNfactor = $tmpNfactor-1;
   }
  }
  if ($tempRest == 0) {
    $output .= $nfactor;
 $tmpAction = "w";
 $rest = $tempRest;
 
  }
  
  $nfactor++;
   }
 
 }
 
 return $output;
}

Lenke til kommentar
Videoannonse
Annonse

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...