C++講座
もくじ
第1章『基本』
第一の壁�配列と繰り返し
文字を表示するだけの例
#include <iostream>
using namespace std;
int main(){
cout << "ぴんくりの大冒険" << endl;
}
入出力ライブラリ「iostream」を�インクルードする。�DXライブラリを使うなら不要。
「std」を省略。�coutやstringは本当は�std::cout、std::stringと書く。
main関数�プログラムはここからスタートする。
cout:文字出力
endl:改行
変数について
「変数」はデータを格納しているもの。
変数の形を「型」という。
[基本になる型]
変数の宣言
「変数」は型を宣言し、名前を付けられる。
整数型のaを宣言する ⇒ int a;
文字列型のmojiを宣言する ⇒ string moji;
int型の例 : a = 100 / 2 + 50;
string型の例 : moji += “ぴんくり”;
変数の図的イメージ
100
200
300
+
=
c a b
c = a + b;
3.141592
double d = 3.141592;
d
変数のキャスト
?
=
c a
123.456
double a = 3.141592; �int c = a;
異なる型の変数を代入できる?
変数のキャスト
123
=
c a
123.456
double a = 3.141592; �int c = (int)a;
異なる型の値を無理やり入れるには
型の「キャスト」を行う。
例)doubleをintにキャストする。
配列変数
a[0] a[1] a[2] a[3] a[4]
int a[5];�a[0] = 1; a[1] = 2; a[2] = 3;�a[3] = 4; a[5] = 5;
1
2
3
4
5
初期化でのみこうも書ける。�int a[] = {1, 2, 3, 4, 5};
配列変数
a[0] a[1] a[2] a[3]
int a[4][3];
要素数をさらに付け加えることで�多次元配列も作れる。
a[0][0]
a[1][0]
a[2][0]
a[3][0]
a[0][1]
a[1][1]
a[2][1]
a[3][1]
a[0][2]
a[1][2]
a[2][2]
a[3][2]
条件分岐
int a = 2; // aに2をセットして宣言
if(a == 1){
// a=1のとき
}else if(a == 2){
// そうでなくてa=2のとき
}else{
// それ以外
}
条件分岐で使える記号
a == b : aとbが等しい(a=b)
a != b : aとbが等しくない(a≠b)
a >= b : aがb以上(a≧b)
a <= b : aがb以下(a≦b)
a > b : aがbより大きい(a>b)
a < b : aがbより小さい(a<b)
!p : 条件pじゃない
p && q : 条件pかつ条件q
p || q : 条件pまたは条件q
繰り返し
for(int i = 0; i < 5; i++){
cout << “カウンタ:” << i << endl;
}
i=0:
i=1:
i=2:
i=3:
i=4:
表示「カウンタ:0」
表示「カウンタ:1」
表示「カウンタ:2」
表示「カウンタ:3」
表示「カウンタ:4」
int i = 0;
初期値(最初に行う処理)
i < 5
ループ条件�(この条件の間繰り返す)
i++
再初期化
(繰り返す度に行う処理)
繰り返し
for(int i = 0; i < 5; i++){
if(i == 2){
continue;
}
if(i == 4){
break;
}
cout << “カウンタ:” << i << endl;
}
出力:
カウンタ:0
カウンタ:1
カウンタ:3
continue(スキップ)
以降の処理を行わず
forの初めに戻る
break(ループ脱出)
forの継続条件に関わらず
そのforループから脱出
繰り返し
配列の要素番号に繰り返しを導入する。
int a[100];
for(int i = 0; i < 100; i++){
a[i] = i + 1;
}
a[0] a[1] …… a[99]
1
2
100