Mnożenie Expa
dRaq
30.01.2011
Nie mam żadnego problemu, ale piszę ten temat z ciekawości. Załóżmy że cvar expa jest ustawiony na 100. Exp pomnożony przez 2(2*=amount) jest prawidłowy czyli 200, zaś pomnożony przez liczbę z przecinkiem(1,3/1,5) daje kosmiczne liczby
Drewno. 30.01.2011
Tak jak mówił sebul
przykład:
Użytkownik PedoBear. edytował ten post 30.01.2011 21:30
przykład:
if(zmienna[id])amount*=1.5
Użytkownik PedoBear. edytował ten post 30.01.2011 21:30
DarkGL
30.01.2011
nigdy nie robi się takich rzeczy jak już chcemy pomnożyć int z floatem to za pomoca float() zmieniamy int na float a potem jesli chcemy powrocic do int to floatround()
nie wiem może ja mam tylko takie zboczenie niech się inni wypowiedzą
nie wiem może ja mam tylko takie zboczenie niech się inni wypowiedzą
dRaq
30.01.2011
No dawałem kropkę tylko się walnąłem w pierwszym poście. Nie kminie tego, dziwna rzecz liczby całkowite traktuje normalnie, kropka ma dziwny wpływ
sebul
30.01.2011
A no też fakt. Z obrażeniami w itemie miałem to samo...nigdy nie robi się takich rzeczy jak już chcemy pomnożyć int z floatem to za pomoca float() zmieniamy int na float a potem jesli chcemy powrocic do int to floatround()
nie wiem może ja mam tylko takie zboczenie niech się inni wypowiedzą
No to, żeby nie robić tego co wyżej opisane, to najlepiej przemnożyć wartość przez "ułamek", czyli zamiast 1.5 wpisać 3/2 ;]
Użytkownik sebul edytował ten post 30.01.2011 22:35
DarkGL
30.01.2011
sebul nie
(3*3)/2 != 3.0 * 1.5
nie kropka nie ma dziwnego wpływu ale po prostu nie robi się takich rzeczy
(3*3)/2 != 3.0 * 1.5
nie kropka nie ma dziwnego wpływu ale po prostu nie robi się takich rzeczy
sebul
30.01.2011
No ale jak zapiszesz to w ten sposób amount*=3/2 to jednak to = amount*=1.5 ;] chyba...sebul nie
(3*3)/2 != 3.0 * 1.5
nie kropka nie ma dziwnego wpływu ale po prostu nie robi się takich rzeczy
A jeszcze co do tych obliczeń, to jak to (3*3)/2 != 3.0 * 1.5...
(3*3)/2 = 4.5 i 3*1.5 = 4.5, więc (3*3)/2 = 3*1.5
Użytkownik sebul edytował ten post 30.01.2011 23:01
sebul
30.01.2011
3/2 to przecież 1.5
3/2 można też zapisać w ten sposób 1 i 1/2, czyli 1.5 ;] Gapa
Aż przez moment zwątpiłem w swoje umiejętności matematyczne
A co do wcześniejszego postu miało być
"(3*3)/2 = 4.5 i 3*1.5 = 4.5, więc (3*3)/2 = 3*1.5", mała pomyłka.
Użytkownik sebul edytował ten post 30.01.2011 23:01
3/2 można też zapisać w ten sposób 1 i 1/2, czyli 1.5 ;] Gapa
Aż przez moment zwątpiłem w swoje umiejętności matematyczne
A co do wcześniejszego postu miało być
"(3*3)/2 = 4.5 i 3*1.5 = 4.5, więc (3*3)/2 = 3*1.5", mała pomyłka.
Użytkownik sebul edytował ten post 30.01.2011 23:01
sebul
30.01.2011
Hmmm... A to nie domyślił bym się tego nigdy. No to niby obydwaj mieliśmy racje, ale ja po "matematycznemu", a Ty w pawnie. Sry za zamieszanie.nie w pawn 3/2 to nie jest 1.5
Tylko jeszcze mam pytanie, na jakiej zasadzie to liczy? Zaokrągla, czy bierze tylko całości?
Użytkownik sebul edytował ten post 30.01.2011 23:06
FreZZy 31.01.2011
generuje śmiecia. Dlatego wam takie liczby wychodzą, jak nie zmieniacie typu na float()
Ew. w C++ nie zaokrągla tylko po prostu ucina końcówke, ale nie wiem czy w tym miejscu PAWN działa tak samo jak cepepe
Ew. w C++ nie zaokrągla tylko po prostu ucina końcówke, ale nie wiem czy w tym miejscu PAWN działa tak samo jak cepepe