広告

Flutterラボの

プレミアム会員になる

【Flutter】レーティングを計算する

2021.12.06

1対1の勝負におけるレーティングの計算をDartで行なってみたので紹介します。

※イロレーティングを使用して計算します。

前提

  • レートは整数で、増減する値も整数(小数点以下を切り捨て)

  • 前提として、平均的な強さのユーザーのレーティングを1500

  • 勝ったユーザーが増えるレートと負けたユーザーが減るレートの値は同じ

  • 平均的な強さのユーザー同士の勝負で、勝ったユーザーが増える(負けたユーザーが減る)レートを16

計算にはmathを使うのでimportしておいてください。

import 'dart:math';

計算

勝ったユーザーのレーティングをwinner、負けたユーザーのレーティングをloserとするとき、勝ったユーザーが増える(負けたユーザーが減る)レートを計算します。

int winner = 1650;
int loser = 1410;

int deltaRate = 32 ~/ ((pow(10, (winner - loser) / 400)) + 1); // 6
Flutterラボ|動画で学ぶFlutter学習サイト Flutter・Dart・Firebaseに関するアプリ制作の技術を学ぶことができます。プログラミング初心者から経験者まで flutterlabo.tech


Flutterラボ
hatchoutschool
FlutterとNuxtに関する知識を発信しています! 動画で学べる学習サイト『Flutterラボ』と『Nuxtラボ』を運営 Flutterラボ:https://flutterlabo.tech/ 広告のECサイトを開発(https://ec-ad.tech/)