Porównanie ciągu liczb |
Porównanie ciągu liczb |
25.01.2021, 13:59:06
Post
#1
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 0 Dołączył: 7.02.2014 Ostrzeżenie: (0%) |
Cześć.
Chciałbym zrobić skrypt, który raz dziennie w bazie aktualizuje kod z 5 różnych liczb np. (71683) - tu problemu nie będę mieć. Chciałbym też by użytkownik poprzez formularz mógł wysłać swoją odpowiedź. Problem pojawia się tu bo chciałbym zrobić skrypt, który sprawdzi: 1 - ile liczb jest poprawnych 2- ile liczb jest na właściwym miejscu. Jeżeli użytkownik dla przykładu wpisze kod 28643 to powinien wyjść wynik: 3 liczby są poprawne 2 liczby są w odpowiednim miejscu. Pomożecie mi jak za to się zabrać. Z góry dziękuję. |
|
|
25.01.2021, 14:39:09
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 457 Pomógł: 6296 Dołączył: 27.12.2004 |
Bierzesz pierwsza cyfre z ciagu i patrzysz czy wystepuje w ciagu wzorcowy. Jak tak, to masz pierwsza liczbe poprawna
Bierzesz druga cyfre z ciagu i patrzysz czy wystepuje w ciagu wzorcowy. Jak tak, to masz kolejna liczbe poprawna Itd. Co do wlasciwej pozycji to robisz podobnie z ta roznica ze nie szukaz w calym ciagu wzorcowy a tylko w okreslonej pozycji W czym problem? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
25.01.2021, 14:42:59
Post
#3
|
|
Grupa: Zarejestrowani Postów: 324 Pomógł: 105 Dołączył: 7.08.2012 Ostrzeżenie: (0%) |
Ja bym rozbił obie liczby na tablicę cyfr i teraz:
1. array_intersect() wskaże tablicę z cyframi w obu liczbach, wystarczy policzyć ile ich jest. 2. pięciokrotna pętla, a w środku licznik wzrastający gdy obie cyfry na każdej kolejne pozycji z obu tablic są takie same. edycja: ja się sugerowałem, że to ma działać tak jak taka stara gra, gdzie odgaduje się jakiś kod w oparciu o wskazówki, które się dostaje odnośnie pozycji cyfr, które zgadujemy. Moje rozwiązanie nie wskaże Ci np. drugiej ósemki w zgadywanej kombinacji jako prawidłowej, gdy w kodzie do zgadnięcia jest tylko jedna ósemka. Rozwiązanie nade mną wskaże obie ósemki jako dostępne w kodzie. Takie drobne różnice, które już sam musisz uznać czy zasadne. Ten post edytował kreatiff 25.01.2021, 14:47:12 |
|
|
25.01.2021, 16:30:06
Post
#4
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 0 Dołączył: 7.02.2014 Ostrzeżenie: (0%) |
Poradziłem sobie w taki sposób:
Co sądzicie o takim rozwiązaniu? |
|
|
25.01.2021, 18:01:26
Post
#5
|
|
Grupa: Moderatorzy Postów: 36 457 Pomógł: 6296 Dołączył: 27.12.2004 |
$kodpost = ''.$_POST['code'].'';
for($i = 0, $length = strlen($kodpost); $i < $length; ++$i){ $kodpost[$i] = $kodpost[$i]; } Po co te ciapki '' przed i po ? Albo to: $kodpost[$i] = $kodpost[$i]; Co to niby ma robic? Dalej nie sprawdzam -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
Wersja Lo-Fi | Aktualny czas: 26.04.2024 - 20:33 |