Autor Zpráva
maniak
Profil *
ahoj všem,

chtěl bych poprosit o radu. Jelikož nevím jak to napragramovat, zkusím to, co nejlépe popsat.

Mám čísla. Známe počet všech čísel. Čísla jdou vždy vzestupně. Čísla vypadají asi takto:

8 9 10 11 - 1 2 3 4 5 6 7 8 9 - 1 2 3 4 5 6

pro lepší orientaci, jsem vložil pomlčku. Víme počet všech čísel do pomlčky, které půjdou vzestupně nahoru včetně největšího čísla. Víme i počet všech čísel mezi pomlčkami i jejich maximum maximum. Víme také počet dalších čísel i jejich maximum. Mění se vždy počet všech čísel, počet čísel do pomlčky a jejich maximum. Budu rád za jakoukoliv radu, jak napsat script, který by na základě dostupných dat, tyto čísla vypsal. Děkuju
tiso
Profil
maniak nechápem, čo tie čísla vlastne predstavujú? A v akom formáte máš tie zadané informácie? Máš ich v poli? Poprosím ukážku vstupných dát...
Matess
Profil *
maniak
Vůbec nevím co máte na mysli, ale nechcete to nějak takto?

$arr = array(8,9,10,11); // čísla, která potřebujete vypsat
foreach ($arr as $value) {
    echo $value;
}

echo "-";

$arr = array(1,2,3,4,5,6,7,8,9); // čísla, která potřebujete vypsat
foreach ($arr as $value) {
    echo $value;
}

echo "-";

$arr = array(1,2,3,4,5,6); // čísla, která potřebujete vypsat
foreach ($arr as $value) {
    echo $value;
}


Pokud jste myslel něco jiného, tak musíte upřesnit svůj dotaz.
Víc Vám v této chvíli nemohu pomoc.
AM_
Profil
Co znamená "víme" a co znamená "mění se"? "víme" je konstanta a "mění se" je proměnná?
nejlépe opravdu ukázat vstupní data.
AM_
Profil
Matess
aby nemusel vypisovat všechy čísla, stačí:
$min = 5;
$max = 15;
for ($i = $min; $i <= $max; $i++){
  echo $i;
}
echo '-';
// atd.
Matess
Profil *
AM_
Vlastně ano. Takto je to ještě lepší.
maniak
Profil *
Asi jsem to špatně napsal:-)

tak já dám lepší přéklad...

máme tedy první čísla. Víme, že max. číslo je 50 a víme že jich bude 4. (takže čísla by měli vypadat 47 48 49 50). Další skupina čísel bude mít max. číslo 20 a je jich 11 (takže 10 11 12 13 14 15 16 17 18 19 20) a poslední součíslí má max. hodnotu 14 a je jich 7 (takže 8 9 10 11 12 13 14). To vše se může dát do jednoho pole. Dalo by se to udělat, že se vytvoří 3 pole a spojí se, ale určitě je lepší způsob.
Alphard
Profil
maniak:
Pořád nevím, jestli to chápu, myslíte něco jako tohle?
range($max - $pocet + 1, $max);

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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