1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | using System; namespace FrictionTest { class Program { static void Main(string[] args) { const float friction = 0.95f; const int frames = 60; float value = 1000f; Console.WriteLine(ApplyFriction(value, friction)); for (int i = 0; i < frames; i++) value = ApplyFriction(value, friction, 1f / frames); Console.WriteLine(value); } static float ApplyFriction(float value, float friction) { return value * friction; } static float ApplyFriction(float value, float friction, float dt) { return value - value * (1f - friction) * dt; } } } |
dXNpbmcgU3lzdGVtOwoKbmFtZXNwYWNlIEZyaWN0aW9uVGVzdAp7CiAgICBjbGFzcyBQcm9ncmFtCiAgICB7CiAgICAgICAgc3RhdGljIHZvaWQgTWFpbihzdHJpbmdbXSBhcmdzKQogICAgICAgIHsKICAgICAgICAgICAgY29uc3QgZmxvYXQgZnJpY3Rpb24gPSAwLjk1ZjsKICAgICAgICAgICAgY29uc3QgaW50IGZyYW1lcyA9IDYwOwoKICAgICAgICAgICAgZmxvYXQgdmFsdWUgPSAxMDAwZjsKICAgICAgICAgICAgQ29uc29sZS5Xcml0ZUxpbmUoQXBwbHlGcmljdGlvbih2YWx1ZSwgZnJpY3Rpb24pKTsKICAgICAgICAgICAgCiAgICAgICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgZnJhbWVzOyBpKyspCiAgICAgICAgICAgICAgICB2YWx1ZSA9IEFwcGx5RnJpY3Rpb24odmFsdWUsIGZyaWN0aW9uLCAxZiAvIGZyYW1lcyk7CiAgICAgICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKHZhbHVlKTsKICAgICAgICB9CgogICAgICAgIHN0YXRpYyBmbG9hdCBBcHBseUZyaWN0aW9uKGZsb2F0IHZhbHVlLCBmbG9hdCBmcmljdGlvbikKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiB2YWx1ZSAqIGZyaWN0aW9uOwogICAgICAgIH0KCiAgICAgICAgc3RhdGljIGZsb2F0IEFwcGx5RnJpY3Rpb24oZmxvYXQgdmFsdWUsIGZsb2F0IGZyaWN0aW9uLCBmbG9hdCBkdCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiB2YWx1ZSAtIHZhbHVlICAqICgxZiAtIGZyaWN0aW9uKSAqIGR0OwogICAgICAgIH0KICAgIH0KfQ==
-
upload with new input
-
result: Success time: 0.01s memory: 38000 kB returned value: 0
950 951.2092


