第2講 変数と定数
第7話 変数による割り算
we
#! ruby -Ks
a=5
b=8
print("a=",a)
print("\nb=",b)
print("\na-b=",a-b)
print("\na×b=",a*b)
print("\na÷b=",a/b)
の実行結果
nhsd
なんと、割り算の答は0となってしまいました。
5÷8ですから、0.625であるはずなのに、
なぜ0になってしまうのでしょうか。
Rubyの変数は、万能型と前に書きましたが、
直前の代入によって、
データ型(整数型、小数型、文字型)が決まるのです。
a=5
b=8

がありますから、変数aとbは整数型になっているのです。
整数型同士の計算結果は、
整数型になるように出来ています。
0.625の小数部分を切りすてて、0とするわけです。
小数部分を切り捨てることを丸めるといいます。
では、小数として扱うにはどうしたらよいのでしょうか。
ww
#! ruby -Ks
a=5.0
b=8.0
print("a=",a)
print("\nb=",b)
print("\na-b=",a-b)
print("\na×b=",a*b)
print("\na÷b=",a/b)

参考ダウンロード添付ファイル
このように変更すると、
sdw
と小数になります。

Rubyの変数は万能であるといっても、
変数にはデータの型があるのです。
そのデータ型は、直前の代入によって決まります。
C++などやJavaでは、
変数はデータ型の宣言をしないと使えませんし、
宣言の型と異なる型のデータを入力するとエラーしますが、
Rubyの変数は、
代入したものに合わせて型を変身させてくれると考えればよいでしょう。
では、データ型を整数のままで、
小数の割り算をさせることは可能でしょうか。
edf
#! ruby -Ks
a=5
b=8
print("a=",a)
print("\nb=",b)
print("\na-b=",a-b)
print("\na×b=",a*b)
print("\na÷b=",a.to_f/b.to_f)

とすると、
sw
となります。
a.to_f.to_fは、データの型を整数型から強制的に小数型
(正確に言うと単精度浮動小数点型ですが、
本講義は基本的に専門用語は使いません。)
に変更してくれるものです。


第6話へ 第8話へ
004


eclipse c++ 入門
魔方陣 数独で学ぶ VBA 入門
数独のシンプルな解き方・簡単な解法の研究
vc++講義へ
vba 2013 2010 2007 入門へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座へ
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
専門用語なしの C言語 C++ 入門(Visual C++ 2010で学ぶ C言語 C++ 入門)
専門用語なしの excel vba マクロ 入門 2013 2010 2007 対応講義 第1部
eclipse java 入門へ
excel 2016 vba 入門第1部へ
本サイトトップへ