Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]Suma liczb bez powtórzeń
colachips
post
Post #1





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 12.01.2009

Ostrzeżenie: (0%)
-----


Witam,

Chciałbym dodać do siebie kilka liczb we wszystkich możliwych kombinacjach, ale żeby działania się nie powtarzały.. Pokaże kod jaki zrobiłem

  1.  
  2. $liczby = $_POST['liczby'];
  3.  
  4. for ($i = 1; $i <= count($liczby); $i++) {
  5. for ($j = 1; $j <= count($liczby); $j++) {
  6. echo 'Liczba '.$liczby[$i].' + Liczba '.$liczby[$j].' = '.($liczby[$i]+$liczby[$j]).'<br />';
  7. }
  8. }
  9.  


Problem w tym, że powtarza działania, czyli np.

$liczby[1] = 111;
$liczby[2] = 222;
$liczby[3] = 333;

W wyniku tego petla wyświetli:

Liczba 111 + Liczba 111 = 222 //ok
Liczba 111 + Liczba 222 = 333 //ok
Liczba 111 + Liczba 333 = 444 //ok
Liczba 222 + Liczba 111 = 333 //blad, ta kombinacja juz byla

Będę wdzieczny za naprowadzenie na właściwy trop
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
flashdev
post
Post #2





Grupa: Zarejestrowani
Postów: 812
Pomógł: 117
Dołączył: 2.12.2008

Ostrzeżenie: (10%)
X----


takie coś:

  1. $liczby = array(1, 2, 3, 4);
  2.  
  3. for ($i = 0; $i < count($liczby); $i++) {
  4. for ($j = $i+1; $j < count($liczby); $j++) {
  5. echo 'Liczba '.$liczby[$i].' + Liczba '.$liczby[$j].' = '.($liczby[$i]+$liczby[$j]).'<br />';
  6. }
  7. }


Edit:
Widzę, że akceptujesz też 1+1
a wiec takie coś:

  1. $liczby = array(1, 2, 3, 4);
  2.  
  3. for ($i = 0; $i < count($liczby); $i++) {
  4. for ($j = $i; $j < count($liczby); $j++) {
  5. echo 'Liczba '.$liczby[$i].' + Liczba '.$liczby[$j].' = '.($liczby[$i]+$liczby[$j]).'<br />';
  6. }
  7. }


Ten post edytował flashdev 10.09.2009, 19:21:15
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 12:30