sizeof演算子
int main() { int a = 1; int b = 0; cout << "short int型のサイズは" << sizeof(short int) << "バイトです。\n"; cout << "int型のサイズは" << sizeof(int) << "バイトです。\n"; cout << "long int型のサイズは" << sizeof(long int) << "バイトです。\n"; cout << "float型のサイズは" << sizeof(float) << "バイトです。\n"; cout << "double型のサイズは" << sizeof(double) << "バイトです。\n"; cout << "long double型のサイズは" << sizeof(long double) << "バイトです。\n"; cout << "変数aのサイズは" << sizeof(a) << "バイトです。\n"; cout << "式a+bのサイズは" << sizeof(a+b) << "バイトです。\n"; return 0; }
$ g++ -o sample sample.cpp && ./sample
short int型のサイズは2バイトです。
int型のサイズは4バイトです。
long int型のサイズは8バイトです。
float型のサイズは4バイトです。
double型のサイズは8バイトです。
long double型のサイズは16バイトです。
変数aのサイズは4バイトです。
式a+bのサイズは4バイトです。
### シフト演算子
数値を2進数で表した場合の桁を左または右に指定数だけずらす演算です。
### 型変換
int main() { int inum = 160; double dnum; cout << "身長は" << inum << "センチです。\n"; cout << "double型の変数に代入します。\n"; dnum = inum; cout << "身長は" << dnum << "センチです。\n"; return 0; }
int main() { double dnum = 160.5; int inum; cout << "身長は" << dnum << "センチです。\n"; cout << "int型の変数に代入します。\n"; inum = dnum; cout << "身長は" << inum << "センチです。\n"; return 0; }
$ g++ -o sample sample.cpp && ./sample
身長は160.5センチです。
int型の変数に代入します。
身長は160センチです。
### キャスト演算子
型を変換することを明示する
dnum = (double)inum;
### 異なる型同士で演算する
int main() { int d = 2; const double pi = 3.14; cout << "直径が" << d << "センチの円の\n"; cout << "円周は" << d*pi << "センチです。\n"; return 0; }
$ g++ -o sample sample.cpp && ./sample
直径が2センチの円の
円周は6.28センチです。
double とintをかけると doubleになる。
### 同じ型同士の演算
int main() { int num1 = 5; int num2 = 4; double div; div = num1 / num2; cout << "5/4は" << div << "です。\n"; return 0; }
int と intの計算のため、回答は1で出力される。(double)num1/(double)num2とキャストした場合は1.25で出力される。
### practice
int main() { cout << "0-4は" << 0-4 << "です。\n"; cout << "3.14x2は" << 3.14*2 << "です。\n"; cout << "5/3は" << 5/3 << "です。\n"; cout << "30/7の余りは" << 30%7 << "です。\n"; cout << "(7*32)/5は" << (7*32)/5 << "です。\n"; return 0; }
三角形の面積
int main() { double height, base; cout << "三角形の高さを入力してください。\n"; cin >> height; cout << "三角形の底辺を入力してください。\n"; cin >> base; cout << "三角形の面積は" << height*base/2 << "です。\n"; return 0; }
$ g++ -o sample sample.cpp && ./sample
三角形の高さを入力してください。
3
三角形の底辺を入力してください。
5
三角形の面積は7.5です。
#include <iostream> using namespace std; int main() { int num1, num2, num3, num4, num5; cout << "科目1の点数を入力してください。\n"; cin >> num1; cout << "科目2の点数を入力してください。\n"; cin >> num2; cout << "科目3の点数を入力してください。\n"; cin >> num3; cout << "科目4の点数を入力してください。\n"; cin >> num4; cout << "科目5の点数を入力してください。\n"; cin >> num5; cout << "5科目の合計点は" << num1+num2+num3+num3+num4+num5 << "です。\n"; cout << "5科目の平均点は" << (num1+num2+num3+num3+num4+num5)/5 << "です。\n"; return 0; }
合計値の場合は、int sum=0, num=0と宣言した上で、
cin >> num;
sum += num;とする方がスマート