Autor Zpráva
Fil sama
Profil
Zdravím, našel jsem algoritmus v PHP pro vytvoření všech možných kombinací znaků. Problém je v tom, že mi nejde přepsat do javascriptu. Už se s tím mořim celý den mohl by mi někdo pomoct?
 <?php
$z = 'abc'; 
$c = 0; 
function add($element, $array){
  $array[] = $element; 
  return $array; 
}
function recurse($limit, $nums){
  global $z, $c; 
  $limit--; 
  if ($limit == 0 || $limit < 0) {
   $v = '';
  foreach ($nums as $n){
    $v .= $z[$n];
   }  
   echo $v."<br>\n"; 
   $c++; 
   return;
  }
  for ($i = 0; $i < strlen($z); $i++) {
    recurse($limit, add($i, $nums));
  }
}
recurse(3);
echo "Kombinaci: ".$c."";
?>

Předem děkuji.
Str4wberry
Profil
Ukaž výsledek celodenního moření, najdeme ti, kde děláš chybu.
Fil sama
Profil
    <script>
     var z = 'ab'; 
     var c = 0; 
     
     function add(element, a){
      a = Array();
      a.push(element);
      return a; 
     }
     
     function recurse(limit, nums){
      limit--;
      if (limit == 0 || limit < 0){
       v = '';
       for (n in nums) { 
        v += z[n]; 
       }
       document.write(v+"<br>");
       c++;
       return;
      }
      for (i = 0; i < z.length; i++) {
       recurse(limit, add(i, nums));
      }
     }
     recurse(4);
     document.write("Počet kombinací: "+c);
    </script>
_es
Profil
Fil sama:
Používejte var
charAt

a = Array();
Tým prepíšeš hodnotu argumentu a na prázdne pole. Asi postačí ten riadok zmazať.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0