Szerző Téma: Számolás probléma  (Megtekintve 641 alkalommal)

Számolás probléma
« Dátum: 2014. November 12. - 21:26:45 »
0 Show voters
Sziasztok!
Nekem erre a kódra 0-t ír ki 20 helyett. Próbáltam már mindent, de sehogy sem akarja működni. Mi lehet a baj? Köszi!
 
format(textstr, sizeof(textstr), \"ERTEK: %d\", (30*150)/100);
SendClientMessage(playerid, COLOR_WHITE, textstr);

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Számolás probléma
« Válasz #1 Dátum: 2014. November 12. - 22:14:52 »
0 Show voters
Az érdekes, mert 45-öt kéne írnia, illetve ezen kódnak önmagában jól kéne működnie. Tehát máshol lesz a hiba.

Számolás probléma
« Válasz #2 Dátum: 2014. November 13. - 13:36:22 »
0 Show voters
Jelenleg így van:
 
format(textstr, sizeof(textstr), \"Ehseg: ~w~%d%%\", (ehseg[playerid]/120)*100);
TextDrawSetString(ehsegtext[playerid], textstr);
TextDrawShowForPlayer(playerid, ehsegtext[playerid]);

 
Ha az éhség 120 akkor kiírja, hogy 100%, ha lejjebb megy, akkor már 0%-ot ír. Próbáltam már %f -el is, azzal sem ment.

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Számolás probléma
« Válasz #3 Dátum: 2014. November 13. - 13:55:26 »
0 Show voters
A %f-nek semmi köze hozzá. Az valós számokat ír ki, tehát pl. 2,3893935393.
120-nál 120-at ír, mert (120/120)*100 az 1*100 azaz 100. Ha pedig az éhség 120-nál kisebb, pl. 119/120, akkor 0 lesz az eredmény, mert sima osztást használsz. 0*100 pedig 0. Pontosan mit szeretnél kiszámolni, mit kéne kiírnia milyen esetekben? És akkor segítek megadni a megfelelő műveletet, amelyben valószínűleg szerepelni fog a maradékos osztás.


Szerk.: Ha pl. a változó értéke 90 és a 100% egyenlő 120-al, akkor itt egy ilyen trükk, amelyhez nem is kell modulózni: (90*100)/120 = 75%
 
format(textstr, sizeof(textstr), \"Ehseg: ~w~%d%\", (ehseg[playerid]*100)/120);
TextDrawSetString(ehsegtext[playerid], textstr);
TextDrawShowForPlayer(playerid, ehsegtext[playerid]);

 
Szerintem te is valami ilyesmit akartál, csak felcserélted őket.
« Utoljára szerkesztve: 2014. November 13. - 14:10:57 írta Dfoglalo »

Számolás probléma
« Válasz #4 Dátum: 2014. November 13. - 15:06:04 »
0 Show voters
Szia! Igy mar jo lett:) Nagyon szépen köszönöm a segítséget!

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal