![]() |
![]() |
![]()
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
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 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Zapis bitowy ( dwójkowy) liczby pokazuje nam jakie liczby mamy wziąć do działania.
W zapisie bitowym liczby wyglądają np tak 1) 0001 2) 0010 3) 0011 4) 0100 5) 0101 6) 0110 7) 0111 ... Mamy teraz twoje liczby 1,2,3,4. Podstawmy twoje liczby na odpowiednie pozycje. Z pozycji gdzie jest 1 pobieramy odpowiadającą jej (pozycji) liczbę i wstawiamy do działania. Jeżeli w całym ciągu, jest tylko jedna 1 to olewamy Przykład: Kod 1 | 2 | 3 | 4 | wynik
----------------- 1) - 0 | 0 | 0 | 1 | ------ 2) - 0 | 0 | 1 | 0 | ------ 3) - 0 | 0 | 1 | 1 | 3 + 4 = 7 4) - 0 | 1 | 0 | 0 | ------ 5) - 0 | 1 | 0 | 1 | 2 + 4 = 6 6) - 0 | 1 | 1 | 0 | 2 + 3 = 5 7) - 0 | 1 | 1 | 1 | 2 + 3 + 4 = 9 8) - 1 | 0 | 0 | 0 | ------ 9) - 1 | 0 | 0 | 1 | 1 + 4 = 5 10) - 1 | 0 | 1 | 0 | 1 + 3 = 4 11) - 1 | 0 | 1 | 1 | 1 + 3 + 4 = 8 12) - 1 | 1 | 0 | 0 | 1 + 2 = 3 13) - 1 | 1 | 0 | 1 | 1 + 2 + 4 = 7 14) - 1 | 1 | 1 | 0 | 1 + 2 + 3 = 6 15) - 1 | 1 | 1 | 1 | 1 + 2 + 3 + 4 = 10 (dlatego na początku wstawiłem same 1 do ciągu i przeliczyłem na system dziesięty, przez co otrzymałem liczbę potrzebnych operacji. od tej wartości odejmiemy ilość liczb jakie mamy i otrzymujemy liczbę możliwych kombinacji (u nas 15 - 4 = 11) ) Ten post edytował wookieb 11.09.2009, 13:14:02 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 00:11 |