Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Prosty skrypcik - prośba
Forum PHP.pl > Forum > Przedszkole
peb
Witam serdecznie

Mam prośbę o nakierowanie mnie na rozwiązanie.
Oto problem:
mam 10 różnych liczb i potrzebuję je dodać do siebie we wszystkich możliwych kombinacjach, problem polega na tym, że nie chodzi tylko o kombinacje "dwójek" bo mogą to być również inne.

Przykładowo jeśli liczby opisane są jako:
A
B
C
D
E
F
G
H
I
J
to suma ma być nie tylko A+B ale może być również A+B+C+H+J itd.

Jeśli ktoś umie mi podpowiedzieć w jakim kierunku pójść będę bardzo wdzięczny.

Dzięki za poświęcony czas.

Pozdrawiam
Rafał
timon27
  1. for($i0=0;$i0<2;$i0++){for($i1=0;$i1<2;$i1++){for($i2=0;$i2<2;$i2++){for($i3=0;$i3<2;$i3++){for($i4=0;$i4<2;$i4++){
  2. for($i5=0;$i5<2;$i5++){for($i6=0;$i6<2;$i6++){for($i7=0;$i7<2;$i7++){for($i8=0;$i8<2;$i8++){for($i9=0;$i9<2;$i9++){
  3. $wynik[]=$A*$i0+$B*$i1+$C*$i2+$D*$i3+$E*$i4+$F*$i5+$G*$i6+$H*$i7+$I*$i8+$J*$i9;
  4. }}}}}}}}}}



W tablicy wynik masz 1024 różne wyniki.

Część się może powtarzać.
Jak chcesz usunąć powtórki to posortuj i pousuwaj w pętli.
Xart
Lool przecierz ten skrypt jest ze sredniowiecza o.O slowo kluczowe var questionmark.gif W php uzywa sie $......
Turson
@Xart
akurar var wywodzi się z OOP kiedy jeszcze nie było PHP5
http://stackoverflow.com/questions/1206105...-keyword-var-do
peb
Cytat(timon27 @ 8.06.2014, 21:32:48 ) *
  1. for($i0=0;$i0<2;$i0++){for($i1=0;$i1<2;$i1++){for($i2=0;$i2<2;$i2++){for($i3=0;$i3<2;$i3++){for($i4=0;$i4<2;$i4++){
  2. for($i5=0;$i5<2;$i5++){for($i6=0;$i6<2;$i6++){for($i7=0;$i7<2;$i7++){for($i8=0;$i8<2;$i8++){for($i9=0;$i9<2;$i9++){
  3. $wynik[]=$A*$i0+$B*$i1+$C*$i2+$D*$i3+$E*$i4+$F*$i5+$G*$i6+$H*$i7+$I*$i8+$J*$i9;
  4. }}}}}}}}}}



W tablicy wynik masz 1024 różne wyniki.

Część się może powtarzać.
Jak chcesz usunąć powtórki to posortuj i pousuwaj w pętli.



Bardzo dziękuję działa, mam jednak jeszcze jedną prośbę czy dałoby się zmusić go do tego żeby przy wyniku dodawania wypisał jakie liczby dodał do siebie.

Z góry dzięki:)
nospor
Nie przesadzasz troche? Zwyklego ECHO nie umiesz zrobic?
peb
[html][/html]
Cytat(nospor @ 9.06.2014, 12:17:02 ) *
Nie przesadzasz troche? Zwyklego ECHO nie umiesz zrobic?

Nie wiem czy dobrze zrozumiałeś pytanie ale nie chodzi mi o wynik ale o info które liczby dodane do siebie dały ten wynik.

Ponadto wydaje mi się, że uszczypliwość jest zbędna, wystarczy nie odpowiadać jeśli nie chcesz.

Pozdrawiam
nospor
Cytat
ale o info które liczby dodane do siebie dały ten wynik.
No ale chyba widzisz co dodajesz, wiec wiesz co masz wyswietlic.

Cytat
Ponadto wydaje mi się, że uszczypliwość jest zbędna, wystarczy nie odpowiadać jeśli nie chcesz.
To nie byla uszczypliwosc a zwykle pytanie: nie umiesz zrobic ECHO?
peb
Cytat(nospor @ 9.06.2014, 12:28:46 ) *
No ale chyba widzisz co dodajesz, wiec wiesz co masz wyswietlic.

Jak wypiszę tablicę to otrzymuję 1024 wyników, kombinacji jest więc sporo. Przy dużych liczbach uwierz mi, że nie zawsze da się odgadnąć które liczby ze zmiennych dodał do siebie, żeby otrzymać wynik i stąd pytanie.

Cytat
To nie byla uszczypliwosc a zwykle pytanie: nie umiesz zrobic ECHO?

Tego już nie ciągnę bo może to ja źle zrozumiałem:)
nospor
No to chyba ja teraz nie rozumiem....

Skoro masz: $wynik[]=$A*$i0+$B*$i1+$C*$i2+$D*$i3+$E*$i4+$F*$i5+$G*$i6+$H*$i7+$I*$i8+$J*$i9;
to przeciez widzisz co dodajesz. Wyswietlaj wiec to sobie

$wynik[]=$A*$i0+$B*$i1+$C*$i2+$D*$i3+$E*$i4+$F*$i5+$G*$i6+$H*$i7+$I*$i8+$J*$i9;
echo $A*$i0;
echo $B*$i1;
itd....
markuz
  1. $data[] = array(
  2. 'wynik' => $A*$i0+$B*$i1+$C*$i2+$D*$i3+$E*$i4+$F*$i5+$G*$i6+$H*$i7+$I*$i8+$J*$i9;,
  3. 'dzialanie' => $A.'*'.$i0.'+' {....}
  4. );


potem robisz echo $data[i]['dzialanie'];
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.