Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Sprawdzanie kolejności cyfr
rolling_stone
post
Post #1





Grupa: Zarejestrowani
Postów: 46
Pomógł: 2
Dołączył: 20.08.2004
Skąd: Warszawa Grochów

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


A teraz mam trochę inny problem:

Potrzebuję sprawdzić czy jakiś 4-cyfrowy ciąg np. 2727 ma taką samą kolejność cyfr jak na przykład ciąg 272 (w tym przypadku warunek jest niespełniony).

I tak na przykład dla ciągu początkowego 272 kolejność cyfr jest taka sama w ciągach 2777, 2722, 2777, 7772, itp., ale już nie jest taka sama w ciągach 2727, 7272, 7277, itp.

Zastanawiałem się nad użyciem funkcji ereg i nad wzorcem o postaci [2]{*}[7]{*}[2]{*}, ale takie rozwiązanie nie za bardzo chce działać.

Gdyby ktoś wiedział co z tym problemem zrobić, byłbym bardzo wdzięczny. Aha i jeszcze jedno: ciąg wyjściowy może mieć ilość cyfr do 10000, a ciąg do sprawdzenia musi mieć 4 cyfry.


Pozdrawiam i z góry dziękuję
Go to the top of the page
+Quote Post
SongoQ
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Cytat
I tak na przykład dla ciągu początkowego 272 kolejność cyfr jest taka sama w ciągach 2777, 2722, 2777, 7772, itp., ale już nie jest taka sama w ciągach 2727, 7272, 7277, itp.


Prawidlowo to sformulowales?
Go to the top of the page
+Quote Post
rolling_stone
post
Post #3





Grupa: Zarejestrowani
Postów: 46
Pomógł: 2
Dołączył: 20.08.2004
Skąd: Warszawa Grochów

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


No dobrze - chodziło mi o to, że jest ciąg, który składa się z dowolnej ilości cyfr (np. 272),

I kilka innych czterocyfrowych ciągów, w których występują tylko i wyłącznie cyfry z ciągu początkowego (to znaczy 2 i 7).

Musimy sprawdzić czy kolejność cyfr w tych czterocyfrowych ciągach zgadza się z kolejnością cyfr w ciągu wyjściowym (272).

Chodzi mi o to, żeby np. istniała funkcja, która będzie wyglądała jakoś tak:

  1. <?php
  2.  
  3. function SprawdzKolejnosc($ciag_poczatkowy,$ciag_drugi)
  4. {
  5.  // jeśli kolejność się zgadza, return true;
  6.  // jeśli się nie zgadza, return false;
  7. }
  8.  
  9. SprawdzKolejnosc(272,2277); // true
  10. SprawdzKolejnosc(272,2272); // true
  11. SprawdzKolejnosc(272,7772); // true
  12.  
  13. // ale
  14.  
  15. SprawdzKolejnosc(272,7727); // false, dlatego, że może występować po kolei 2, 7 i 2 (każda cyfra dowolną ilośc razy), ale w takiej kolejności! A kolejnośc tu jest inna, bo jest 7, 2, 7
  16.  
  17.  
  18. ?>



Mam nadzieję, że teraz to lepiej wygląda.
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


A to http://forum.php.pl/index.php?showtopic=31671 (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)


-------------------------
OMG: Co za skleroza (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował dr_bonzo 16.06.2005, 00:13:04
Go to the top of the page
+Quote Post
rolling_stone
post
Post #5





Grupa: Zarejestrowani
Postów: 46
Pomógł: 2
Dołączył: 20.08.2004
Skąd: Warszawa Grochów

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


A racja, dziękuję Ci bardzo, zupełnie zapomniałem, że tamten temat założyłem.

Dzięki i przepraszam
Go to the top of the page
+Quote Post

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: 15.09.2025 - 08:25