第2講 変数の学習
第9話 実数型変数
コード
#include<iostream>
using namespace std;
void main(){

    int a,b;
a=5;
b=8;
cout<<"a="<<a<<endl<<"b="<<b<<endl<<"a-b="<<a-b<<endl;
cout<<"a×b="<<a*b<<endl;
cout<<"a÷b="<<a/b<<endl;

}
参考ファイル
の実行結果は、
z
となると期待されたかと思いますが、
実際には
b
となりました。
これはどういうことでしょうか。
皆さんにヒントを授けましょう。
謎の鍵は、1行目
   int a,b; 
にあります。
intは整数を意味しました。
a,bは整数型の変数でした。
c++言語の場合、整数型同士で計算した結果も整数型になります。
ですから、小数点以下が切り捨てられ0となってしまったのです。
では、正しい結果を得るにはどうしたらよいでしょうか。
実数型変数を用意するが正解です。
実数型変数を用意するには
   float a,b;
とします。
言い忘れていましたが、
   float a,b;
   int a,b;
などを変数型の宣言といいます。
   int a,b;
なら、aとbを整数型変数であると宣言するという意味です。
コードを
#include<iostream>
using namespace std;
void main(){

    float a,b;                      
a=5;                       
b=8;                       
cout<<"a="<<a<<endl<<"b="<<b<<endl<<"a-b="<<a-b<<endl;
cout<<"a×b="<<a*b<<endl;
cout<<"a÷b="<<a/b<<endl; 

}
参考ファイル
と書き換えると、
nnz
と正しい答えになります。

   float a,b;

   double a,b;
と変更しても同じ結果が得られます。
floatの方は、単精度実数型(単精度浮動小数点型)と呼ばれ、
doubleの方は、倍精度実数型(倍精度浮動小数点型)と呼ばれます。
2つの違いは何でしょうか。
倍精度とついているのですから、
扱える小数の範囲が違うのだということは、
簡単に予想できます。

そこで、
コードの
   a=5;
   b=8;
の部分を
   a=1;
   b=3;
として、float型とdouble型の違いを実験してみると・・・・  

第8話へ
 第10話へ

a

魔方陣 数独で学ぶ VBA 入門
数独のシンプルな解き方・簡単な解法の研究
VB講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座

初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 C++ 入門 基礎から応用まで第1部
eclipse java 入門
java 入門 サイト 基礎から応用まで
VC++ C言語 C++ 入門 初心者 基礎から応用まで
本サイトトップへ