今からはじめるプログラミング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

-----------------------

あってる?かな?