![]() |
Hilfe bei Formel
hallo =)
kann mir jemand helfen folgende funktion zu realisieren?: Zitat:
NP: sind die neuen Punkte. AP: sind die alten punkte. K: ist eine konstante, die die maximal zu gewinnende/verlierende punktzahl enthält basiert auf den Gegnerrank gegen den man gespielt hat. 1minimum-64maximum WL: ob man gewonnen oder verloren hat (1/0) DR: ist die differenz de rpunkte beider spieler. ein spieler kann nie mehr als 10% seiner punkte verlieren.
Delphi-Quellcode:
das geht soweit ganz gut da wenn ich der funktion "0, 0" übergebe ich "32" bekomme.... falsch wird es nur wenn ich z.b "120,120" übergebe...da kriege ich immer noch "32" das dürfte aber eigentlich nicht sein....und der Fehler muss an K liegen.... weiss jemand wie ich für die K Konstante den richtigen wert bekomme? 64 kann es ja nicht immer sein...
function GetPoints(Player1, Player2: integer): integer;
var NP, AP, WL, DR, winnerPoints, loserPoints: integer; const K: integer = 64; begin DR := loserpoints - winnerpoints; result := AP + K * (WL - (1 / (10 ^ (DR / 400) + 1))); end; viewlleicht hilft das ja weiter: ![]() aber ich kriege das nich raus... |
Re: Hilfe bei Formel
NP = AP + K * (WL - (1 / Power(10, (DR / 400) + 1)) ;
würd ich sagen math muss in uses stehen. Gruß DelphiFreund |
Re: Hilfe bei Formel
hallo,
ich habe das ganze in C, habs nur kurz in delphi "überschrieben" damit jeder versteht was ich meine. Meine Rechnung stimmt sonst soweit, also in C brauch man kein Power, sorry, haette ich erwähnen sollen |
Re: Hilfe bei Formel
Ich hab das geschrieben,weil Delphi keine Potenzen kann. Deshalb funktion Power.
Geht das in C? Gruß DelphiFreund |
Re: Hilfe bei Formel
jo, in C geht das mit ^
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz