Kezdőoldal » Számítástechnika » Weblapkészítés » PHP szavazórendszer pontszámít...

PHP szavazórendszer pontszámító algoritmus?

Figyelt kérdés
Vannak képek, amikre lehet szavazni tetszik-kel vagy nem tetszik-kel. Az lenne a kérdésem, hogy hogyan lehetne ezekből pontot csinálni, ami meghatározná a felhasználó helyezését a szavazatok alapján? Átlag az nem jó, valami hatékonyabb kéne..

2015. szept. 23. 19:53
 1/8 anonim ***** válasza:
Írd le miért nem jó, milyet akarsz, akkor talán tud valaki jobb ötletet mondani.
2015. szept. 23. 20:59
Hasznos számodra ez a válasz?
 2/8 A kérdező kommentje:

Szóval, tegyük fel, van a Pista és a Sanyi, mind a ketten már tagok az oldalon.

Pistának van 3 képe, amelyeken összesen 30 tetszik és 14 nem tetszik van. Átlagolva ez 22. Tehát Pistának 22 pontja van.

Sanyinak van 6 képe, amelyeken összesen 40 tetszik és 1 nem tetszik van. Átlagolva és kerekítve 21 pontja van Sanyinak.

Szóval ezért nem jó az átlagolás. Jelen pillanatban a példában elméletileg Sanyi sokkal menőbb, mint Pista, mivel több tetszik és kevesebb nem tetszik van a képein mint Pistának, de mégis Sanyi a 2, mert átlagolva lett kiszámolva a pontjuk.

2015. szept. 23. 21:07
 3/8 A kérdező kommentje:
Olyat szeretnék, hogy a pontok arányosan legyenek kiszámolva, és igazságosan :D
2015. szept. 23. 21:08
 4/8 Drone007 ***** válasza:

Jelen esetben ez az átlagszámítás messze nem igazságos.

Használd az egyet előre egyet hátra módszert: a like-ok számából vond ki a dislike-t, és oszd el a képek számával.

Vagy súlyozd a like-okat és a dislike-okat. Egy like 5 pont, egy dislike 1 pont. De ez esetben is jobb lenne ha képenként kapná a pontokat a tulaja, mintha egy nagy átlagot dobnál fel.

A nagy átlagpontszámba persze más tényezők is beleszámíthatnak, pl mióta tag, hány ismerőse van, hányszor értékelte már mások képeit, stb...

2015. szept. 24. 06:23
Hasznos számodra ez a válasz?
 5/8 anonim ***** válasza:

Hát oszd el az eredményt a képek számával is, nagy cucc...


(30 + 14) / 2 / 3 = 7.3

(40 + 1) / 2 / 1 = 20.5

2015. szept. 24. 10:19
Hasznos számodra ez a válasz?
 6/8 anonim ***** válasza:

Ha számít a képek mennyisége is, akkor még adj hozzá annyi pontot, amennyi képet feltöltött, így ez az eredmény jön ki:


(30 + 14) / 2 / 3 + 3 = 10.3

(40 + 1) / 2 / 1 + 1 = 21.5

2015. szept. 24. 10:29
Hasznos számodra ez a válasz?
 7/8 anonim ***** válasza:

Utolso:

1-el osztottad a 6 helyett, a te logikad szerint is a benabb kap tobb pontot.

2015. szept. 24. 17:18
Hasznos számodra ez a válasz?
 8/8 anonim ***** válasza:

Bocsi, 6 helyett 1-et olvastam, de amúgy se lett volna jó. Akkor legyen pl. így:


Képek = 3

Szavazás összesen = 44

Tetszik = 30

Nem tetszik = 14

( ( 100 - ( 100 / ( 44 / 3 ) ) ) + ( 100 - ( 100 / ( 30 / 14 ) ) ) ) / 2 = 73.257


Képek = 6

Szavazás összesen = 41

Tetszik = 40

Nem tetszik = 1

( ( 100 - ( 100 / ( 42 / 6 ) ) ) + ( 100 - ( 100 / ( 40 / 1 ) ) ) ) / 2 = 91.607


Képek = 6

Szavazás összesen = 41

Tetszik = 41

Nem tetszik = 0

( ( 100 - ( 100 / ( 41 / 6 ) ) ) + 100 ) / 2 = 92.682


Képek = 30

Szavazás összesen = 43

Tetszik = 41

Nem tetszik = 2

( ( 100 - ( 100 / ( 43 / 30 ) ) ) + ( 100 - ( 100 / ( 41 / 2 ) ) ) ) / 2 = 62.677


1. Kiszámolod a szavazatok és képek arányát.

2. Kiszámolod a jó és rossz szavazatok arányát.

3. Kiszámolod a két eredménynek az átlagát.


Ha nincs egy negatív szavazat se, akkor írj 100-at a szavazatok arányához. Ha kevesebb a szavazat mint amennyi kép van, akkor mínuszba megy a pont (azt még finomítani kellene).


Max. pontszám mindig 100-tól kevesebb.

2015. szept. 25. 00:35
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!