今からはじめるプログラミング42
ボインボインなスーパークリークさんをなかなか有馬記念勝たせてあげられなくて、思い悩んでます。
というわけで、いままでプログラムつくっていて、なんでこういうの作ってなかったかな?
というのを思いついた。。。というよりまたまたNFTにつける属性で、そういえば最近のゲームといえば「ガチャ」だよね〜。
がちゃの機能をプログラムしないと。
つくりました。
Gacha
---------------------------------------------
package sample23;
import java.util.Random;
/****
* がちゃ
*
*****/
public class Gacha {
private double dSSR = 0.03;
private double dSR = 0.05;
private double dR = 0.10;
public void setSsr(double value) {
this.dSSR = value;
}
public void setSr(double value) {
this.dSR = value;
}
public void setR(double value) {
this.dR = value;
}
public String gachagGacha() {
int iSSR = (int) (dSSR * 100);
int iSR = (int) (dSR * 100) + iSSR;
int iR = (int) (dR * 100) + iSR;
Random r = new Random();
int val = r.nextInt(100);
if (val < iR) {
if (val < iSR) {
if (val < iSSR) {
return "SSR";
} else {
return "SR";
}
} else {
return "R";
}
} else {
return "N";
}
}
public static void main(String[] args) {
//ためしに100かいまわす
Gacha g = new Gacha();
for (int i = 0; i < 100; i++) {
System.out.println("がちゃ結果=" + g.gachagGacha());
}
}
}
---------------------------------------------
実行結果は、エクセルに貼り付けてCountIFで集計しました。
1回目
-----------------------
6 | SSR |
5 | SR |
11 | R |
78 | N |
-----------------------
2回目
-----------------------
4 | SSR |
9 | SR |
6 | R |
81 | N |
-----------------------
あってる?かな?