dokumentacja
jest trochę niekompletna co do magii wartości 6
i kiedy zastosować max
funkcji, ale oto tabela moich ustaleń, oparta na tej dokumentacji.
Jak mówi, wzory na dzielenie to:
I, jak sam podkreślasz, mamy przypis:
Oto, co stworzyłem w moim arkuszu kalkulacyjnym:
p1 s1 p2 s2 prInit srInit prOver prAdjusted srAdjusted
38 16 38 16 93 55 55 38 6
28 16 28 16 73 45 35 38 10
29 16 29 16 75 46 37 38 9
Więc używam pr
i sr
aby wskazać precyzję i skalę wyniku. prInit
i srInit
formuły to dokładnie fora z dokumentacji. Jak widać, we wszystkich 3 przypadkach dokładność wyniku jest znacznie większa niż 38
dlatego obowiązuje przypis. prOver
to tylko max(0,prInit - 38)
- o ile musimy dostosować precyzję, o ile ma zastosowanie przypis. prDostosowany
to tylko prInit - prOver
. Widzimy we wszystkich trzech przypadkach, że ostateczna precyzja wyniku wynosi 38
.
Jeśli zastosuję to samo współczynnik dopasowania do skali to otrzymałbym wyniki 0
, 10
i 9
. Ale widzimy, że Twój wynik dla (38,16)
sprawa ma skalę 6
. Uważam więc, że właśnie tam max(6,...
część dokumentacji faktycznie ma zastosowanie. Więc moja ostateczna formuła dla srAdjusted
to max(6,srInit-prOver)
a teraz mój ostateczny dostosowany
wartości wydają się pasować do wyników.
I oczywiście, jeśli zapoznamy się z dokumentacją decimal
, widzimy, że domyślny precyzja i skala, jeśli ich nie określisz, to (18,0)
, więc oto wiersz, w którym nie określono precyzji i skali:
p1 s1 p2 s2 prInit srInit prOver prAdjusted srAdjusted
18 0 18 0 37 19 0 37 19