Avatar billede lakana Nybegynder
28. marts 2006 - 19:03 Der er 4 kommentarer og
1 løsning

Løbe en masse arrays igennem

Hej, hvis nu jeg har:

$bogstaver_tilladt = "abcdefghijklmnopqrstuvxyzæøå";
$tegn_tilladt = "!#¤%&/()=?^*_:;@£$€{[]}~µ";
$tal_tilladt = "0,1,2,3,4,5,6,7,8,9";

hvordan får jeg den så løbet igennem, så den finder mellem 6-18?

fx den løber igennem således:

a - b - c - d - e - g
b - b - c - d - e - g
c - b - c - d - e - g
d - b - c - d - e - g

Og sådan fx
@ - b - c - d - e - g

Og andre muligheder:
@ - $ - a - Z - Z - 8
/ - _ - \ - @ - 8 - A
? - A - D - E - F - !

.. altså den skal løbe dem igennem og ikke bruge de samme fra start.

Faktisk ligesom en slags "bruteforce", det er dog ikke det - den er til :-)
Avatar billede jakobdo Ekspert
28. marts 2006 - 22:37 #1
Ikke den bedste løsning, men:

<?php
//http://www.eksperten.dk/spm/698876

$tegn = "abcdefghijklmnopqrstuvxyzæøå!#¤%&/()=?^*_:;@£$€{[]}~µ0123456789";

for($a = 0; $a < strlen($tegn); $a++)
{
    echo $tegn[$a];
    for($b = 0; $b < strlen($tegn); $b++)
    {
        echo $tegn[$b];
        for($c = 0; $c < strlen($tegn); $c++)
        {
            echo $tegn[$c];
            for($d = 0; $d < strlen($tegn); $d++)
            {
                echo $tegn[$d];
                for($e = 0; $e < strlen($tegn); $e++)
                {
                    echo $tegn[$e] . "<br />";
                }
            }
        }
    }
}

?>
Avatar billede lakana Nybegynder
29. marts 2006 - 01:58 #2
Ser godt ud, men den skal vise mellem 6 til 26 cifre med forskellige inputs.
fx
a - a - a - b - c - d
eller
a - a - a - b - c - d - ? - $ - £ - $ - 3
Avatar billede lakana Nybegynder
29. marts 2006 - 02:17 #3
Har selv prøvet lidt, og fundet frem til dette resultat, eventuelt en som kan forkorte den?


<?
set_time_limit(0);

$bogstaver[0] = "a";
$bogstaver[1] = "b";
$bogstaver[2] = "c";
$bogstaver[3] = "d";
$bogstaver[4] = "e";
$bogstaver[5] = "f";
$bogstaver[6] = "g";
$bogstaver[7] = "h";
$bogstaver[8] = "i";
$bogstaver[9] = "j";
$bogstaver[11] = "k";
$bogstaver[12] = "l";
$bogstaver[13] = "m";
$bogstaver[14] = "n";
$bogstaver[15] = "o";
$bogstaver[16] = "p";
$bogstaver[17] = "q";
$bogstaver[18] = "r";
$bogstaver[19] = "s";
$bogstaver[20] = "t";
$bogstaver[21] = "u";
$bogstaver[22] = "v";
$bogstaver[23] = "w";
$bogstaver[24] = "x";
$bogstaver[25] = "y";
$bogstaver[26] = "z";

$bogstaver[27] = "!";
$bogstaver[28] = "#";
$bogstaver[29] = "¤";
$bogstaver[30] = "%";
$bogstaver[31] = "&";
$bogstaver[32] = "/";
$bogstaver[33] = "(";
$bogstaver[34] = ")";
$bogstaver[35] = "=";
$bogstaver[36] = "*";
$bogstaver[37] = "_";
$bogstaver[38] = ":";
$bogstaver[39] = ";";
$bogstaver[40] = ".";
$bogstaver[41] = "-";
$bogstaver[42] = ",";
$bogstaver[43] = "@";
$bogstaver[44] = "£";
$bogstaver[45] = "^";
$bogstaver[46] = "€";
$bogstaver[47] = "{";
$bogstaver[48] = "[";
$bogstaver[49] = "]";
$bogstaver[50] = "}";
$bogstaver[51] = "µ";

$bogstaver[52] = "0";
$bogstaver[53] = "1";
$bogstaver[54] = "2";
$bogstaver[55] = "3";
$bogstaver[56] = "4";
$bogstaver[57] = "5";
$bogstaver[58] = "6";
$bogstaver[59] = "7";
$bogstaver[60] = "8";
$bogstaver[61] = "9";





foreach($bogstaver as $bogstav)  {
    foreach($bogstaver as $bogstav2)  {
        foreach($bogstaver as $bogstav3)  {
            foreach($bogstaver as $bogstav4)  {
                foreach($bogstaver as $bogstav5)  {
                    foreach($bogstaver as $bogstav6)  {
                        echo $bogstav . $bogstav2 . $bogstav3 . $bogstav4 . $bogstav5 .

$bogstav6 . "\r\n";
                       
                    }
                }
                    }
        }
    }
}










?>
Avatar billede lakana Nybegynder
29. marts 2006 - 02:20 #4
- men hvordan får jeg den til at tjekke først med 6 cifre, bagefter med 7 cifre og bagefter med 8 cifre op til 26 cifre ad gangen?
Avatar billede lakana Nybegynder
03. maj 2006 - 19:48 #5
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester