![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 12.04.2018 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Potrzebuje pomocy w temacie tablic prawdopodobnie. Mam w osobnym pliku z mienna ktora "trzyma" tablice z zawsze piecioma wartosciami. Te wartosci sa aktualizowane wiec nie sa one zawsze takie same ale dajmy na to ze dla przykladu bedzie to:
Te wartosci liczbowe zawsze sa takie same tylko nazwy sie zmieniaja. I teraz mam w pliki .txt taka strukture [linia o linii]
Teraz tlumacze. Tablica $p zawiera klucze ktore sie zmieniaja ale wartosci zawsze sa takie same czyli dla klucza 0 bedzie 25, dla klucza 1=>20, klucz 2=>15, klucz 3=>10 i klucz 4=>5 W pliku jak widac jest po pięć linii dla kazdego jakby imienia [ostatni indeks]. Jest tyle samo linii ile indeksow w zmiennej $p. Ilosc linii nie jest okreslona. Chodzi o porownanie wystepowania tych liczb i przypisac to konkretnym danym. To jest typowane ktore zapisywane jest wpliku przez userow. Maja pięć mozliwosci i musza je wybrac. Kiedy typowanie sie konczy ja podaje kto wygral [ tablica $p ] Przyklad j/w czyli jesli klucz 0 z tablicy i jego wartosc [przykladowo 'Tomek Domek' => '25'] rowna jest wartosci z indeksow 3 i 4 z pliku nalezy przypisac wartosc klucza 3 do wartosci klucza 4 tyle ze trzeba wszystkie wartosci sprawdzac z tymi z pliku czyli wynikiem w tym przykladzie bedzie:
Zawsze jest pięć. Co nie jest zgodne nie moze sie wyswietlic. Niestety nie daje rady sam z tym i jest to za trudne dla mnie. Ktos moglby mi pomoc ? Ok. Zrobilem przyklad zeby sprawdzic dzialanie i dziala lecz na dwoch tablicach z piecioma kluczami i wartosciami. Problem pojawia sie kiedy chce wstawic tablice z pliku.
Przyklad wyswietla TYLKO te klucze i wartosci ktore sa na identycznych miejscach z identycznymi wartosciami. I o to mi chodzi tylko jak zrobic to z plikiem gdzie moze byc i 1000 linii Ok poradzilem sobie ale mam jeszcze jedno pytanie. W pliku sa wartosci liczbowe, nick i nazwa osoby typowanej. W jaki sposob zsumowac dla kazdej z osob wartosci i je wyswietlic. Zalozmy ze osoba TOMEK wytypuje prawidlowo miejsce pierwsze (25pkt) i trzecie (15pkt) i teraz chcialbym to dodac do siebie w postaci: PLik .txt
Wynik:
Ten post edytował hopaj 31.07.2018, 07:35:09 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 460 Pomógł: 49 Dołączył: 5.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Lepiej jakbyś napisał, gdzie przy tym sumowaniu punktów Tomka napotykasz na barierę własnych umiejętności. Wtedy szybciej znajdzie się pomoc.
Na szybko widzę to tak: http://php.net/manual/pl/function.file.php Funkcja file pozwoli zamienić plik na tablicę. Potem piszesz funkcję, która dla zadanego imienia znajduje odpowiednie elementy tablicy. Potem funkcję, która sumuje konkretne pola z tablicy tablic. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 12.04.2018 Ostrzeżenie: (0%) ![]() ![]() |
W tym pliku moze byc tak jak wyzej a moze byc i tak:
Wylistowac z tablicy to nie jest problem. Problem stanowi przypisanie danemu imieniu sumy pól czyli wynik powinien wygladac tak :
Nie chodzi mi o samo wylistowanie tablicy. Problem jest z tym wlasnie Ten post edytował hopaj 1.08.2018, 11:42:39 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
A nie możesz tego jak człowiek zapisać w bazie (nawet sqlite) i robić normalne zapytania.?
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 12.04.2018 Ostrzeżenie: (0%) ![]() ![]() |
A nie możesz tego jak człowiek zapisać w bazie (nawet sqlite) i robić normalne zapytania.? Prosba jest o pomoc nie o pisanie w bazie. Potem piszesz funkcję, która dla zadanego imienia znajduje odpowiednie elementy tablicy. Potem funkcję, która sumuje konkretne pola z tablicy tablic. Funkcja napisana i posortowana poprzez Teraz mam przypisane dane Imie => punkty ale za chiny nie wiem jak zsumowac punkty bo jak wsadze to w pętle a musze to zczytam wszystko jak leci a chce tylko zeby kazde imie wyswietlilo sie tylko raz a obok suma punktow. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 21:58 |