C#入門1

C#(シーシャープ)

とは?

  • マイクロソフトが開発しているプログラミング言語で、
    • Java(ジャバ)
    • C++(シープラスプラス)言語

を元にして作られています。

(「Java(ジャバ)」に非常に似てます)

学習環境

  • ここでは学習環境として、ブラウザ上で手軽にプログラムが試せる「paiza.io」というサイトを使います。paiza.io」←をクリックしてください。
  • 表示したら左上のボタンでプログラミング言語を選択し、C#にしておきましょう。

クリック

C#を選択

学習項目

  • C#入門では、下記の項目を勉強します。
  • すでにJavascript(ジャバスクリプト)入門をやっている人は、すでに知っているような項目はありますが、記述方法やルールなどは異なる部分も多いので、一つずつ進んでください。
  1. 値(ね)と型(かた)
  2. ​​変数
  3. 演算子
  4. 制御構文(せいぎょこうぶん

1.値・型の種類

  • 値(あたい、または、ね)というのは、[1]とか[10]とかの【数字】や、[”こんにちは”][”オリンピック”]などの【文字列(言葉)】の事を言います。
  • この【値】の違いを【型】と呼びます。プログラミングでは、【型】の違いが非常に重要になります。
  • 型の種類は何十とありますが、すべて覚えるのはキツイですし、そもそも大半は使いません。今は以下の型だけ覚えてください。※詳細は次のページへ続きます。

主な型の種類:

Int(イント)型 → 整数(せいすう:小数点がない数):1とか5など。

float(フロート)型 → 実数(じっすう:小数点がある数):1.0とか5.3など。

double(ダブル)型 → floatの細かいバージョン。

string(ストリング)型 → 文字列(もじれつ):"こんにちは"とか"やあ"など。

bool(ブール)型 → 真偽値(しんぎち):真(正しい)か偽(正しくない)か。

Int型

  • Int(イント)型とは、1・5・20・100などの小数点のない数(整数)を扱う型です。
  • 最小で-2147483648から最大で2147483647までの数が使えます。
  • 整数を英語で言うと[ integer(インテジャー)]なので、それを略して[ int(イント) ]です。
  • 「3」と「3.0」は数字としては同じ数字ですが、int型なのは「3」だけで、「3.0」はint型ではありません。

実は、整数を扱う型は他にもあります。

主に「使える数の範囲」と、「マイナスが使えるか(符号付き)」によって種類が分かれます。

float・double型

  • float(フロート)型double(ダブル)型は、どちらも1.2・30.9・3.14などの小数点を含んだ数を扱える型です。
  • 「3」と「3.0」は数字としては同じ数字ですが、float型またはdouble型なのは「3.0」だけで、「3」はint型です。
  • float型double型の違いは、扱える桁の大きさ(精度)です。

float型double型の違い

10÷3など、割りきれない計算をする場合「どこまで細かく計算するか?(精度)」が重要になることがあります。

float(フロート)型 → 3.333333(精度が低い)
double(ダブル)型 → 3.33333333333333(精度が高い)
  • 基本的にUnityなどのゲーム開発では、【float型】を使います。※重要
  • なぜ「精度の低い」float型を使うかと言うと、精度が低い分「メモリを使わない」(カンタンに言うと処理が軽い)からです。ゲームなどでは、処理の速さの方が優先されますので、float型を使います。
  • 逆に数字の正確さを求められる場合では、double型を使います。

string型

  • string(ストリング)は、"はい"・"プログラミング"・"Hello"など、文字列を扱う型です。
  • 必ず【"】(ダブルクォーテーション)で、文字列を囲みます。
  • 数字を”3”のように""で囲めば、文字列となります(数字ではなくなります)。

※数字としての「3」と文字列としての"3"の違い

例えば、プログラムに「3+5」を表示させてみると、

数字として表示させる場合 → 8と表示される(計算の答えが表示される)

文字列として表示させる場合 → 3+5と表示される(文字なので計算はされずに、表示される)

bool型

  • bool(ブール)型は特殊な型で、[真(正しい)か、偽(正しくない)]か、の2種類だけを扱います。
  • 下記のように「true」と「false」で、表します。
    • 真(正しい)→ true(トゥルー)
    • 偽(正しくない) → false(フォールス)
  • スクラッチで言うと「もし〜なら」ブロックのように、条件分岐(じょうけんぶんき)を使う際などに使います。
    • C#以外ではboolean(ブーリアン)型と呼ばれる事も多い。(boolean(ブーリアン)を短くしたのがbool(ブール))

bool(ブール)型の例:

スクラッチで【もし「敵Aに触れた」なら、HPを-1にする】

このような条件分岐をよく使うと思いますが、これは、

【「敵Aに触れたという条件が「true」になった時」HPを-1にする】

処理ということです。

反対に、【でなければ〜】が、「条件がfalseであれば」という意味になります。

型の変換

  • 型の違いが特に重要になる時はというと、計算をする時です。
  • 注意点は【計算は”同じ型”どうしでしか出来ない】という事です。
  • 違う型を計算するためには、型変換(キャスト)というものをする必要があります。※方法は必要な際に説明します。
  • ただし自分でやらなくても、ほとんどの場合は自動で型変換(キャスト)してくれます。
  • 先ほどの「1+2.4」や「"こんにちは"+5」なども、一見、何事もなく計算出来ているように見えますが、実は型は型変換(キャスト)されています。
  • このような自動で変換される事を暗黙の型変換(キャスト)などと言います。
  • 反対に、自分でキャストする事を[明示的な型変換(キャスト)]などと言います。

※自動でキャストされる例

  • 1+2.4 → 3.24

(int型の1が、double型の1.0に自動キャストされて計算)

  • "こんにちは"+5 → こんにちは5

(int型の5がstring型にキャストされて計算)

 

※ちなみに自動でキャストされる際は、”幅広い値を扱える型の方に変換される”という法則もあります。

例:[ float型 + double型 ]の場合はdouble型になる、[ int型 + float型 ] ならfloat型になる、などです。

尚、string型と数字系の型(intやfloat)なら必ずstring型が優先なります。

2.変数

  • 変数とは「変わる値」という名前の通り、変化する数字などを入れる「箱」のような物と考えてください。
  • 変数を作る事を「宣言」すると言います。
  • 作った変数に値を入れる事を「代入」すると言います。
  • 名前はほぼ自由に付けれますが、一部使えない単語(予約語)や「名前の1文字目に数字は使えない」などルールがあります。
  • 基本的には英数字(アルファベットと数字)以外の、日本語などは使わないでください。

変数

10という数字(値)

10

代入

変数 hoge を作りまーす!

宣言

箱に入れる

宣言→変数が出来る!

  • 宣言」方法
  • 代入」方法
int aaa;

変数 aaa を作りまーす!

変数 aaa

10

10という数字(値)が変数に入ります。

変数 aaa 

この時点では、変数は空です

※型がintで変数名がaaaの場合

変数

  • 変数の作り方は以下のように、型を指定した後に、名前を宣言して作ります。
  • 宣言した型と違う値は、代入できずエラーになるので注意です。
aaa = 10;
  • また、C#では文章の終わりに必ず【 ; 】(セミコロン)を付けます。
  • セミコロンがない場合は、行が変わっていても、ひとつの”文章”と解釈され、エラーの原因となるので注意してください。
int aaa = 10; //変数と代入をまとめて書いておく
  • 変数の初期化」方法
  • 宣言と代入は、同時に記述することも出来ます。(「初期化しておく」という言い方をします)
  • 変数に入れる値が決まっている場合は、上の例のように初期化しておく(同時に記述する)のが一般的です。
  • また、バグを減らすテクニックとして、【もし値が決まっていなくても、「とりあえずint型なら0を入れておく」】みたいに、必ず【初期化しておく】方が良いとされます。

※注意点

  • 同じ名前の変数は、一度しか宣言出来ません。
  • 逆に代入は何度でも出来ます。(ただし上書きされる)
int aaa;
aaa = 10;
int aaa; //ここでエラー
int aaa;
aaa = 10;
aaa = 120; //aaaが120になる

変数

  • 初期化しておく場合(同時に記述した場合)も、同じです。※最初は間違えやすいので注意
int aaa = 10;
int aaa = 120; 
//2重宣言なのでエラー
int aaa = 10;
aaa = 120; 
//aaaが120になる
string aaa = "こんにちは";
string aaa2 = "Hello";

変数

  • 変数にはint型だけでなく、string型や他の型も代入出来ます。

  • string型の場合は、文字列を【 ” 】で囲む必要があります。

  • 数字も文字列として扱いたい場合は、同じように囲むと、数字ではなく文字列として認識されます。

string aaa3 = "10";
//数字ではなく、文字列として代入されます。
  • ちゃんと""と付けなかった場合はエラーになります。
string aaa3 = こんにちは;
string aaa3 = 10;
//両方エラー
  • 変数に変数を代入することも出来ます。
int aaa = 100;
int aaa2 = aaa;

変数

  • それぞれの型の宣言+代入方法は、こんな感じです。※float型は特殊なので、必ず覚えましょう。
int x = 10;
int x = 2000;
↓悪い例
int x = "10"; //エラー
int x = 3.0; //エラー
string x = "こんにちは";
string x = "10";
↓悪い例
string x = 10; //エラー
string x = こんにちは; //エラー
float x = 1.0f; //fをつける
float x = 3.14f;
↓悪い例
float x = 10; //エラー
float x = 1.0; //エラー
double x = 1.0; 
double x = 3.14d; //dをつける(つけなくても良い)
↓悪い例
double x = "1"; //エラー
double x = 10; //エラーにならないが、バグを減らすために10.0するべき
bool x = 1 < 2; //詳細は後で
bool x = 10 < 1;
↓悪い例
bool x = 10; //エラー
bool x = "正しい"; //エラー

int型

string型

float型

double型

bool型

fを忘れるとdouble型になるので注意

dは、あっても、なくてもdouble型になる

実際にやってみよう

変数

  • paiza.ioで変数を使った計算をしてみましょう。
  • 最初は→のような表示かと思います。
  • 赤線の部分にコードを記述します。
  • 右の画像を参考に、実際に変数を作って、表示してみましょう。
  • 出来たら、画面下の【実行】ボタンで書いたコードの結果が出力されます。間違った場所があればエラーが表示されます。

※ちょっと説明

下のコードは初めから書かれています。

()の中の「”Hello C#”を表示する」という意味ですので、"Hello C#"部分を、作った変数に変えましょう。→の画像を参考。

3.演算子

  • 演算子とはカンタンに言うと[+]とか[-]とかの事です。
  • 色々な種類がありますが、代表的な物は以下です。

主な演算子の種類:

算術演算子(さんじゅつえんざんし) → お馴染みの「足す」「引く」「かける」「割る」系です。

比較演算子(ひかくえんざんし) → 「イコール」や「右が大きい」「左が大きい」などのアレです。関係演算子(かんけいえんざんし)などとも言います。

論理演算子(ろんりえんざんし) → 「◯◯かつ◯◯」「◯◯または◯◯」などの時に使います。

  • 基本的には上記3つをしっかり理解していれば、特に困ることはありません。
  • ちなみに変数を代入するために使った[ = ]は代入演算子(だいにゅうえんざんし)と呼びます。(そのまんま)
  • 次のページ以降で、詳しく見ていきましょう。

ちなみに、

演算子の両脇の値はオペラントと呼びます。(演算子の種類は問いません)

たとえば、【1 + 2】の場合は、「左のオペラントは1」「右オペラントは2」という感じです。

たまーに使う用語なので、覚えておきましょう。

1 + 2; //足す
1 - 2; //引く
1 * 2; //かける
1 / 2; //割る
1 % 2; //割ったその余り

算術演算子

  • 算術演算子とは【+(たす), -(ひく), *(かける), /(わる)】などのことです。
  • +(たす)や -(ひく)はそのまんまですが、 *(かける), /(わる)は数学で使う記号とは違うので、注意してください。
  •  *(かける)は[アスタリスク]という記号です。数学での×記号は使いません。
  • /(わる)は[スラッシュ]です。数学での%記号は別の意味になります。
  • %は【割った後、余りの数だけ】を結果として返す演算子です。つまり[10%3]は[1]になります。余り以外の数字は完全にムシされます。余りがない場合(割り切れる場合)は当然0になります。
  • 計算の結果を、そのまま変数に代入する事も良くやります。
int x = 1 + 2;
int x = 1 + 2;
int x2 = x * 10;
  • さらにその変数を式に使う事もできます。

算術演算子

  • よくあるケースとして「ある変数の値を10増やしたい」場合は、以下のように書きます。
  • 上記の例では【+=】(足す)でしたが、【ー=】(引く)、【*=】(かける)、【/=】(割る)も同じように出来ます。
x = x + 10;
//※[=]よりも[+]が先に計算され、その後、代入される
  • さらに短く、ラクに書くことも出来ます。
x += 10;
//[x = x + 10;]と同じ意味
x += 10;
x -= 10;
x *= 10;
x /= 10;
x %= 10;

必ず【=(イコール)は右側】ですので、それだけ覚えておけば簡単ですね。

算術演算子

  • さらに少し特殊な書き方として、【 ++ 】インクリメントと【 −− 】デクリメントというものがあります。
  • これは「1ずつ足す」(インクリメント)「1ずつ減らす」(デクリメント)という意味になります。
  • 非常に良く使うので必ず覚えてください。
  • 書き方は特殊で、変数の「前か後ろ」に引っ付けるだけです。
  • ちなみに[++x]か[x++]によって少し処理が変わります。
  • ちょっとややこしいですが違いは以下です。※今は特に覚えなくてもいいですが、理解はしておいてください。
int x = 1; 
int x2 = ++x; //変数xに1足した数を変数x2に代入
System.Console.WriteLine(x);  //結果2(上記で++xが実行されているため)
System.Console.WriteLine(x2);  //結果2(2になった状態の変数xを代入したため)
++x; //1足す
x++; //1足す
--x; //1引く
x--; //1引く

基本は[++x]で良いかと思います

x = x + 1; //1足す
x = x - 1; //1引く
int x = 1; 
int x2 = x++; //変数xに1足した数を変数x2に代入
System.Console.WriteLine(x);  //結果2(上記で++xが実行されているため)
System.Console.WriteLine(x2);   //結果1(1足される前に、変数xを代入されたため)

[++x]の場合

[x++]の場合

コレと

コレは同じ意味

算術演算子

  • 【+】を使えば、文字列の連結も可能です。
string a = "私は" + "トムです";
string x = "こんにちは"; 
string z = x + "トム";
  • ちなみに表示するための【System.Console.WriteLine();】の()内でも計算が出来ます。
int x = 10; 
System.Console.WriteLine(x + 10);
string x = "こんにちは"; 
System.Console.WriteLine(x + "トム");
  • また、数学と同じように()で囲めば計算の順番を変えられます。
int x = 10; 
System.Console.WriteLine(x * (x + 5));
int x = 10 * (10 + 5); 
System.Console.WriteLine(x);

false(フォールス)

true(トゥルー)

比較演算子

  • 比較演算子とは、【<(右が大きい)、>(左が大きい)、==(同じ大きさ)】の記号を使い、値を比べて、それが【正しい】か【正しくないか】を判定します。
  • つまり「1<2」は【正しい】、「1>2」は【正しくない】、「1==10」は【正しくない】といった感じです。
  • 計算した結果、必ず「正しいtrue(トゥルー)」か、「正しくないfalse(フォールス)」どちらかに変化します

  • true(トゥルー)」とは、「真(しん)」。「false(フォールス)」は、「偽(ぎ)」とも言います。
bool x = 1 < 2; 
//このように計算をすると…
bool x = true; 
//trueかfalseに変化する!
bool x = 10 < 2; 
//このように計算をすると…
bool x = false; 
//trueかfalseに変化する!

1<2は【正しい】ので

trueに変化

10<2は【正しくない】ので

falseに変化

比較演算子

  • 注意点としては、以下のような場合は、どちらも【false(フォールス)】になります。
bool x = 10 < 10; 

どちらも正しい

=は必ず右側に付くと覚えましょう!

bool x = 10 >= 10; 
  • 「<」は「より右が大きい」を表すので、「同じ」はfalse(フォールス)】です。
  • 同じく「>」は「より左が大きい」を表すので、「同じ」は【false(フォールス)】です。
  • 同じ値も含む(以上)とするには、以下のように[ = ]と合体させます。
bool x = 10 <= 10; 
bool x = 10 > 10; 

どちらも正しくない

  • 他にも、少し変わった【 != 】というものもあります。
  • これは、【正しい時はfalse、正しくない時はtrue】と結果を逆にする演算子です。
bool x = 10 !< 1; 
bool x = 1 !< 10; 

正しいを逆にしてfalse

正しくないを逆にしてtrue

比較演算子

  • 整数以外でも比較できます。
bool x = 10.0f < 10.1f; 

true

  • string(ストリング)型(文字列)の比較も出来ます。
  • ただしstring(ストリング)型の場合は、「==」か「!=」のみです。
  • また、数字との比較も出来ません。(数字を""で囲んで、文字列にすればOK)
bool x = 10 == 10.0f; 
  • 違う型の数字でも、自動で変換した上で、比較してくれます。
bool x = "こんにちは" == "こんにちは"; 

true

bool x = "こんにちは" == "コンニチハ"; 

true

false

bool x = "こんにちは" < "コンニチハ"; 

これはエラー

bool x = "こんにちは" < 10; 

これもエラー

bool x = "こんにちは" == "10"; 

これはOK(false)

変数を使う事も出来ます。

変数の場合は代入されている値を比較する事になります。

論理演算子

  • 論理演算子(ろんりえんざんし)は比較演算子と同じように、「true」「false」を結果として返します。
  • 基本な論理演算子は、
    • &&(左右ともtrueの時は、true)、||(左右どちらかtrueの時、true】を使います。
  • 違う点は、左右のオペラント(値)も「true」「false​」を使って演算をします。つまり、論理演算の左右のオペラントは、必ず比較演算か論理演算になります。

true

bool a = 1 == 1 && 1 == 1;
System.Console.WriteLine(a);

これはエラー

bool a = 10 && 10;
System.Console.WriteLine(a);

false

bool a = 2 < 1 && 1 == 1;
System.Console.WriteLine(a);

false

bool a = 1 < 2 && 1 == 1 || 10 > 1 || 1 < 10;
System.Console.WriteLine(a);
bool a = 2 < 1 || 1 == 1;
System.Console.WriteLine(a);
bool a = 2 < 1 || 2 < 1;
System.Console.WriteLine(a);

true

論理演算子もtruefalseですので、bool型になります

true

論理演算子

  • また、特殊な演算子として【!】があります。
  • これの使いかたは他とは違い、片方のオペラント(値)にだけ付けると、その値がtrueならfalsefalseならtrueとなります。

falseになる

bool a = 10 == 10;
System.Console.WriteLine(!a);

trueになる

bool a = 1 == 100000000;
System.Console.WriteLine(!a);

falseになる

bool a = 1 <= 10;
System.Console.WriteLine(!a);

falseになる

bool a = 1 != 100000000;
System.Console.WriteLine(!a);

☆ちなみに…

実は、IT系の用語の読み方は、非常にテキトウなので、人によってかなり違う事があります。

特に、比較演算子や論理演算子の読み方は、あまり統一されていません。

一般的なのは、【<(小なり)】【>(大なり)】【<=(以上)】【>=(以下)】【==(等しい)】【!=(ノットイコール)】【&&(かつ・アンド)】【||(または・オア)】【!(ノット)】みたいな感じです。

  • 条件」の部分に「1 > a」などの条件式を記入し、その結果がtrueの時だけ、「やりたい処理」が実行されます。
  • falseの場合は何もしません。(ムシ)
  • 条件式は、結果が必ず【truefalse】にならないといけないので、比較演算(>、<、==など)、または論理演算(&&、||など)を使います。

4.条件分岐[if文]

  • 条件分岐(じょうけんぶんき)とは「もし◯◯なら、△△をする」という意味で、プログラムには欠かせない文です。
  • その条件分岐の中でも、基本となる【if(イフ)文】をマスターしておきましょう。
  • if文は、以下のように書きます。
if( 条件 ){
    やりたい処理
}
int hp = 10;
if( hp < 5 ){
    System.Console.WriteLine("やられるー");
}

falseなのでなにも表示されない

int hp = 3;
if( hp < 5 ){
    System.Console.WriteLine("やられるー");
}

trueなので「やられるー」表示される

ちょっと寄り道

()や{}について

 

  • プログラミングでは、if文で使われているような()や{}が非常に良く出てきます。

  • 読み方も人それぞれで、最初は非常に覚えづらいのですが、主な呼び方は以下の感じです。

int hp = 3;
if( hp < 5 ){
    System.Console.WriteLine("やられるー");
}
System.Console.WriteLine("残りHPは"+hp+"です");

「やられるー」は条件がtrueの時だけ言うが、「残りHPは〜」は、if文の範囲{}の外なので、if文は関係しません。

つまり「やられるー」と「残りHPは3です」が表示されます。

()→ 丸かっこ・かっこ・パーレン ※個人的には「かっこ派」

{}→ 波かっこ・中かっこ・ブレイス ※個人的には「波かっこ派」

[]→ 角かっこ・大カッコ・ブラケット ※個人的には「角かっこ派」

<> → 山かっこ・アングルブラケット ※個人的には「山かっこ派」

  • この中でも、特に{}(波かっこ)は大量に出てきますし、非常に重要になる事が多いでのしっかり意味を理解しておきましょう。
  • {}は【ここから→{ }←ここまで】というように、何かしらの範囲(はんい)を表す使われ方になります。
  • if文の場合で言うと、【条件がtrueの時に、やりたい処理】の範囲という事です。
  • この{}で区切られた範囲の事を「ブロック」と言います。

条件分岐[if文]

  • {}の中の「やりたい処理」はいくつでも記述できます。
if( 条件 ){
    やりたい処理1
    やりたい処理2
    やりたい処理3
}
  • 「やりたい処理」の中に、さらにif文を入れる事も出来ます。
if( 条件① ){
    やりたい処理1
    if( 条件② ){
     やりたい処理2
    }
}
int hp = 0;
if( hp < 5 ){
    System.Console.WriteLine("やられるー");
    if( hp < 1 ){
        System.Console.WriteLine(" ( ́;ω;`) ");
    }
}

{}に注目!

このような形を「入れ子」「ネスト」などとも言います。

この場合、変数hpは0なので、外側のifも、内側のifも両方trueなので「やられるー ( ́ ́;ω;`) 」と表示されます。

条件分岐[if文][else]

  • 次は「もし◯◯なら」だけじゃなく「〜でなければ」も指定する方法です。
  • 「でなければ」は、if文に「else(エルス)」を追加します。
if( 条件 ){
    条件がtrue(トゥルー)の時やりたい処理
else{
    条件がfalse(フォレス)の時にやりたい時
}

else(エルス)の後の{}の中に、書いた処理は、条件式がfalseの場合のみ動きます。

trueの時はムシされます)

  • さらに最初の条件が「falseだった場合」に、別の条件を指定することも出来ます。
if( 条件① ){
    条件①がtrueの時に、やりたい処理
}else if( 条件② ){
    条件①がfalseで、条件②がtrueの時に、やりたい処理
}else{
    条件①と②がfalseの時に、やりたい処理
}
int tensuu = 70;
if(tensuu > 80){
    System.Console.WriteLine("合格です");
}else if(tensuu > 60){
    System.Console.WriteLine("もうちょい");
}else{
    System.Console.WriteLine("残念でした");

else ifの後の{}の中に、条件①がfalseだった場合の、次の条件(条件②)を記述します。

条件分岐[if文][else]

  • コードを書いていると()や{}が大量に増えてきますが、それぞれのカッコの始まり終わりを見失いやすいので注意しましょう。
int hp = 0;
if( hp < 5 ){
    System.Console.WriteLine("やられるー");
    if( hp < 1 ){
        System.Console.WriteLine(" ( ́;ω;`) ");
    
}

※else ifの始まりの{ が足りないため、エラーになる。

int tensuu = 70;
if(tensuu > 80){
    System.Console.WriteLine("合格です");
}else if(tensuu > 60)
    System.Console.WriteLine("もうちょい");
}else{
    System.Console.WriteLine("残念でした");

※終わりの }が足りないため、エラーになる。

条件分岐[if文][else]

  • コードを書いていると()や{}が大量に増えてきますが、それぞれのカッコの始まり終わりを見失いやすいので注意しましょう。
int a = 10 * 7;
int b = 7 * 10;
if( a < b ){
    System.Console.WriteLine("あ");
}else if( a == b ){
    System.Console.WriteLine("い");
}else{
    System.Console.WriteLine("う");

※else ifの始まりの{ が足りないため、エラーになる。

int tensuu = 70;
if(tensuu > 80){
    System.Console.WriteLine("合格です");
}else if(tensuu > 60)
    System.Console.WriteLine("もうちょい");
}else{
    System.Console.WriteLine("残念でした");

※終わりの }が足りないため、エラーになる。

繰り返し文[ for ]

  • 繰り返し文とは、何度も同じ処理を繰り返したい時に使います。
  • 複数の種類がありますが、まずは基本的なfor(フォー)文から覚えましょう。
  • 書き方は少し特殊で、以下のように書きます。
for(int i=0(数える用の変数作る) ; i<3(処理をする条件) ; i++(数える変数を1足す){
    //ここに繰り返したい処理を書く。
}
for(int i=0 ; i<3 ; i++){
    System.Console.WriteLine("ほ");
}
//ほほほ と表示される。


for(int i=0 ; i<3 ; i++){


    System.Console.WriteLine("ほ");


}
  • for文の処理の動きはこのようになります。(①から③が繰り返されます)

変数iの初期化

(最初だけ)

①条件判定

②処理

③変数iの増減

①の条件判定がtrueの間だけ、処理が行わるので、falseになったら繰り返しが終わります。

変数iのことを「カウンター変数」と呼びます。

繰り返し文[ for ]

  • for(フォー)文は、柔軟に色々な書き方が出来ます
for(int i=0 ; i<繰り返したい回数 ; i++)
for(int i=93 ; i>90 ; i--){
    System.Console.WriteLine("ほ");
}
//これでも"ほほほ"と表示される。

「繰り返したい回数」以外は固定しておく。

繰り返したい回数の部分だけを、処理の内容によって変える。

  • ただし慣れるまでは複雑になってしまうので、わかりやすいルールを決めておいた方が良いかと思います。
  • 例えば、以下のように書くと、繰り返したい回数だけ指定すれば、その回数だけ処理を繰り返してくれます。

入門はまだまだ続く

  • 次は下を押して、C#入門2に進みましょう。

C#入門1

By kinocode

C#入門1

  • 3,227