読者です 読者をやめる 読者になる 読者になる

Sinatraのあらかると

記録することで、環境構築で悩まない。

Javaで実装されたBMIを見直すと。

BMIの値をだすJavaサンプルをみると自身で測定までしてあるじゃないか…。
じゃあ、できるかぎり対応してみよう。if文では評価が変だった。


# -*- coding: utf-8 -*-
#!ruby -Ks

class Bmi
attr_accessor :bmi, :taijyu , :sincho
end

def sum(a,b)
x = a/(b*b)
return x
end


puts "BMI指数を図ります。BMIの公式は、"
c = Bmi.new
c.bmi = "BMI指数"
c.taijyu = "体重"
c.sincho = "身長"
puts "(#{c.bmi})=(#{c.taijyu})/(#{c.sincho}*#{c.sincho})です。"
puts "私の体重は83kg,身長は173cmです。"
#sum(体重,身長)
n = sum(83,1.73)
puts "BMI指数は#{n.round}です。"

#ここまでは前回同様。

#ちょっとダサいけど、caseの後ろにBMI指数を入れる。
case 28
when 10..17
puts"ちゃんと食べてますか。"
when 18..24
puts"[標準] 健康体型です。"
when 25..29
puts"肥満度[1] ダイエットしましょう。"
when 30..34
puts"肥満度[2] ダイエットを頑張ろう。"
when 35..39
puts "肥満度[3] とにかく運動しましょう。"
when 40..50
puts "肥満度[4] メタボ対策をとりましょう。"
end

実行結果
BMI指数を図ります。BMIの公式は、
(BMI指数)=(体重)/(身長*身長)です。
私の体重は83kg,身長は173cmです。
BMI指数は28です。
肥満度[1] ダイエットしましょう。

ちゃんとRubyでも測定できたので私は妻をお迎えにいってきます。
妻は今日美容院でカットしてもらったそうです。それでは。

[検証]case文でbmi値を入力することで回避しました。
ちょっとダサいけど。if文で評価されないよりはマシ。

追伸:もともと、BMI値は前回測定できていたので今回はBMI指数の評価を。
また、他に検証したいことがあったらRubyで作ってみます。

Copyright © 2007-2017 Takayuki Kamiyama. All Rights Reserved.