新しいプロジェクト→Windowアプリケーション→おk
フォームが表示される
F5または矢印で実行
簡単だね☆
ツールボックスを使おう
右側にツールボックスがなかったら表示→ツールボックスで表示しよう
さてツールボックスからボタンをドラッグ&ドロップ 好きな位置に置こう
実行すると好きなだけ押せるボタンが作れるぞ!
できたらいろんな部品をぽとぺたしよう!
プロパティをいじくろう
設置した部品を選択しよう 右下にプロパティが表示されてるかな?
ボタンを選択したらTextのところを探して好きな文字に変更してみよう
BackColorやFontも変えてみよう!
イベントを作ろう
さていきなりボタンをダブルクリックしてみよう
いきなりテキストエディタに飛ばされるはずだ
たぶんbutton1_clickとか書かれてると思う
意味はそのままでボタンが押された時ここに書かれたコードが実行されるんだ
そこに
MessageBox.show("働け");
と書いて実行しよう
そうしてボタンを押すと…
ラベルを追加しよう
ラベルは好きな文字を表示できる部品(コントロール)だよ
表示する文字はTextプロパティで変更できるよ
さて実行する前は変更できるようになったね? 次はボタンを押したらラベルの内容を変更されるようにしよう
さっきMess~を書いたとこの一行下に書こう
label1.Text = "うほっ";
これはlabel1(ラベルの名前)のTextプロパティに"うほっ"を入れるという意味です
文字は""で囲んであげる必要があります
=は等しいという意味ではありません 右のものを左へいれるという意味で、代入といいます
コンソール篇
ここからはプログラムの基本を学びます
新しいプロジェクトからコンソールアプリを作りましょう
今度はフォームが現れずにコードが表示されましたね?
今回はフォームは使いません
どんなコードが表示されてるか忘れたので憶測で書きますが
public static void Main~
{
}
があると思います ここはプログラムが実行されたとき一番最初に実行される部分です
次からコードはこの{}の中に書いていきます
画面に表示する命令はSystem.Console.WriteLine();です
ちょっと長いですね^^ でも省略する方法があります
それがコードスニペットです ctrl + k , xで候補がでます
cwと打って決定するとあら不思議
さてスニペットを使って入れたWriteLine()の()の中に表示したいものを入れましょう
例えば"HelloWorld!"と入れてみましょう
さて普通に実行しても実行結果が見えない早さで閉じてしまうのでデバッグなしで実行を選びましょう
またはShift+F5でおkです
質素な画面ですが 我慢しましょう
確認したら次へ進みましょう
計算をする
目の前の箱は電子計算機なんですから計算をさせてみましょう
先ほどの()の中身を書き換えます
計算はそのまま(3+5)や(4*5)と書けば結果が表示されます ""は文字じゃないので今回は使いません
加減算よりも剰余算が優先されます 普通の式と一緒です
()も使う事ができます
WriteLine((3+5)*2)のように書けます 掛け算は省略できません
ちょっと注意なのは割り算です 記号は/です
でも(10/3)とかやっても変な結果が出ると思いますが まあ後でやりましょう
変数
さて電卓にもメモリー機能があるようにコンピュータも情報を保存することができます
ちなみにファイルに保存とは違います ちょっとだけ保存です
情報を保存するには場所を確保しなければなりません この場所のことを変数といい 確保することを変数の宣言といいます
宣言するためには型をしていする必要があります
型とはどんな情報であるかという種類を表しています
例えば文字を格納する変数の型は string です
整数を格納する変数の型は int です 整数の英語integerの略です
変数を確保するときはその場所に名前をつけます なまえはかぶってはいけません
数字で始めることはできません できるだけアルファベットを使いましょう
日本語も使えますがやめたほうがいいです
変数の宣言は以下のようにします
型名 変数名;
例えば整数を格納する変数seisuの宣言は
int seisu;
となります
変数への代入
変数に値を入れることを代入と言います 文法は
変数名 = 値;
です =は等しいと言う意味ではありません
右から左へ値を代入することを意味しています
先ほどのseisuに10を代入しましょう
seisu = 10;
ちなみに先ほどのintと宣言しましたので整数以外を入れる事ができません
seisu = 12.3;
はエラーになります
変数の表示
変数の中身を表示する事もできます
WriteLine(seisu);
と書けば変数の中身が表示されます また
WriteLine(seisu*seisu);
とやることで変数を利用して計算することもできます
WriteLine(seisu +5);
とかももちろんできます
時計の表示
日付と時間はDateTime構造体を使えば取得できます~ 構造体が何かはひとまず置いておきましょう
ちなみにC#の説明書みたいなのはMSDN Libraryにあります msdn DateTime などで検索すると説明が探せます
さて日付と時間を格納する変数の型はDateTimeです
現在の時間を取得するのは以下の用にします
DateTime jikan = DateTime.nowTime; (あってるかな?)
表示は
WriteLine(jikan.ToString());
で表示できます
実はWriteLine(jikan)では表示されません(たぶん)
実はWriteLine()の中身は文字しか書けません てかさっきのチュートリアル間違ってたかな?
なのでjikanを文字に直さなければいけません
ToString()という命令は文字に変換する命令です
これで時間と日付が表示できるはずです^^
関数の続き
関数は関数名()で表されます
()がついてないものは変数ですので区別できますね
引数は()の中に書きます どんな引数を取るかは関数によって変わります~VSなら引数の情報が自動的に表示されて便利です
実際の使い方ですがWriteLine()という関数は文字列を引数にとります~なので使い方は
WriteLine("働け");
となります
また累乗を求める関数Math.pow()は引数に数字(double)を2つとります 書き方は
Math.Pow(2,3);
のように,で区切ります
また、結果を利用するにはdouble型(少数も格納できる型)の変数を利用して
double kotae = Math.Pow(2,3);
とします これで2の3乗ができました
関数を作る
さて今まではpublic static void Mainというところに書いていたと思いますが よく見たら()がついてますね? 実はこれも関数なんです
Mainという関数は特別で1番最初に実行される関数です
なので今まではMain関数を作ってきたことになります
このように自分で好きなように関数を作る事ができます 書式は
アクセス修飾子 戻り値の型 関数名(引数のリスト){}
です 今度はわけわからん感じですがとりあえずアクセス修飾子はひとまず置いておきましょう
累乗を計算する関数を書いてみましょう
double Pow(double a,double b){}
となります 具体的な内容は次へ
関数定義の続き
double Pow(double a,double b)
まず最初のdoubleは戻り値の型を表しています~double型の結果を返す事を意味しています
C#は慣例的に最初の一文字目は大文字で始め動詞をつけます 動作が解りやすいように名付けましょう
()の中は引数を指定しています 何の情報が欲しいのかを書きます
今回はdouble型が2つ欲しいので引数も2つです
また引数は自動的に変数に入ります aとbは変数名ですね
具体的な処理は{}の中に書きます
{}はブロックといいます 関数の範囲を示しています
はじめての関数
はじめてなので与えられた数字を倍にする関数を作りましょう
場所はMain{}の下にしましょう
今回はintを受け取ってintを返しましょう なので
int bai(int a){}
が関数の宣言部になります
次に2倍する処理を書きます
int kotae = a * 2;
与えられた数字はaに入っているので2をかけて倍にします
次に答えを返します 返すにはreturnキーワードを使います 答はkotaeに入っているので
return kotae;
と書きます returnしたら関数は処理を終了します
では作った関数をMainから使ってみましょう
Mainの中に
int x = bai(5);
WriteLine(x.ToString());
とすると10と表示されるはずです
これからご飯食べに行くの巻
さてint型変数iがあるとしよう
これに何が入っているかわからないが1を足したい
どういうコードを書けばいいだろうか?
頭を働かして考えて欲しい ~
答え
i = i + 1
i = i + 1;はなんとなく気持ち悪いかも知れない
さてC#はCの血が流れていて省略の美学というものがある いくつかよく使うものを紹介しよう
i += 1;
これは上式とまったく同じ意味です この方が見やすいかな?
そして1を足す場合にだけはさらに特別に省略できる
i++;
これも同じ意味である 1を足す場合は良くあり使われるので覚えておこう
ちなみに足し算だけでなく
i -= 1;
i *= 1;
なども同様にできる
ちなみにi--もある
Powを作ろう
累乗を計算する関数Powを自分で作ってみよう
まず引数を決めよう 今回は簡単のためint型変数を2つとろう
2.1の0.86乗とかなるとめんどくさいので 2の3乗のようにする
返り値は整数の掛け算だから答も整数になるのでint型でいいだろう
これを元に関数の宣言を自分で書いてみよう
不安な人はコードをコピペして採点してもらおう
あと戻り値の型の前にstaticをつけてほしい~
答
static int Pow(int x,int y){}
繰り返し構文
さて累乗をするPow関数を作成しよう 引数x,yを使いxのy乗を計算する
例えば2の3乗なら2*2*2で、単純に繰り返せばいい事がわかる
つまり引数を使ってx*x*x…をy回やればいい事になる
ではこのように繰り返しを表現するにはどうすればいいのだろう?
C#にはfor構文が用意されている これを使おう
さて書式は
for(初期化式;繰り返し条件;繰り返し式){}
であるけどこれではよくわからないので単純に10回繰り返すサンプルを書いてみよう
for(int i=0;i<10;i++){}
まずint i=0はforが始まる前に一回だけ実行される iは慣用的に使われる名前で何回繰り返したか数えておく変数である
i<10はこの条件が満たされている間繰り返しなさいといういみである ちなみにiが10未満という意味
i++は一回繰り返す度に実行される 1回繰り返すとiに1足していくので数えられるだろ?
これがfor文の基本系だ しっかり理解しよう
ちなみに0から始めるには理由があるのでそんなもんかとおもっておこう
さて今回はy回繰り返したい 基本系をちょっと変えてy回繰り返せるようにしよう
答~
for(int i=0; i<y; i++){}
static int Pow(int x,int y)
{
int result=1;
for(int i=0;i<y;i++)
{
result *= x;
}
return x;
}