ポケモンUSUMの実数値計算のシュミレーション
ソースコード
Syuzokuti.f90
PROGRAM Syuzokuti
IMPLICIT NONE
INTEGER :: a, b, c, d
REAL(8) :: x, y, z, seikaku
PRINT *, '種族値を入力してください'
READ * ,a
PRINT *, '個体値を入力してください'
READ * ,b
PRINT *, '努力値を入力してください'
READ * ,c
PRINT *, '性格補正 ↑:0 ↓:1 →:2'
READ * ,d
!性格補正
IF (d == 0) THEN
seikaku = 1.1
ELSE IF (d == 1) THEN
seikaku = 0.9
ELSE
seikaku = 1
END IF
!Lv.50時のHP計算
x = (a + b / 2.0 + c / 8.0) + 60
!HP以外の能力値
y = (a + b / 2.0 + c / 8.0 + 5.0) * ( seikaku )
PRINT *, 'HP =',x , 'HP以外 =', y
END PROGRAM
今回は対戦レート用にLv.50で計算します
実行してみよう
コンパイラーを使って .exeファイルを作成
$ gfortran -o Syuzokuti.exe Syuzokuti.f90
ディレクトリで実行
$ ./Syuzokuti.exe
実行結果
今回用意したポケモン 素早さ計算
ミミッキュ 種族値96 ようき(性格補正↑) S252(極振り) V=31
/Syuzokuti.exe
種族値を入力してください
96
個体値を入力してください
31
努力値を入力してください
252
性格補正 ↑:0 ↓:1 →:2
0
HP = 203.00000000000000 HP以外 = 162.80000352859497
HP以外 = 162.80...なので
種族値は計算後に小数点以下は切り捨てるので、
162である(今後修正しようと思う)