アルゴリズムⅠ・講義メモ(4/24)

今回のテーマ:変数、変数のトレース、演算子、四則演算を使用したプログラム

変数

・言語に関わらず用意されている仕組みで、バリアブル(変わり得るもの)の和訳
・メモリ(記憶領域)を確保して名前をつけたもの
・データを格納できる器のイメージ
・変数にデータを格納することを代入といい、すでに代入されているデータがある場合上書きする
・フローチャートでは「変数 ← データや計算式」で代入を示す
 ※ 逆の「データや計算式 → 変数」とも書ける
・C/C#では「変数 = データや計算式」で代入を示す (※逆向きは禁止)
 ※ この「=」には「等しい」という意味はない
・なお、C/C#では変数に代入する前に「確保」を支持する「宣言」が必要(フローチャートでは省略)
・Cにおける変数の宣言では「どういう変数か」を指定するデータ型の指定が必要
・変数の宣言と代入は同時にでき、これを初期化という
・C#では、初期化で記述すると、データ型の指定は不要
 書式: var 変数名 = データや計算式; //C#における初期化
・代入した値は、変数名で用いることができる
 例: フローチャートでは「x ← 10」「x を表示」
・変数の値を使って代入できる
 例: フローチャートでは「x ← 10」「y ← 20」「x ← y」※ xもyも20になる
・処理の流れによって、変数の変化する値を追いかけることをトレースという
 ※ C/C#ではVSにトレース機能があるが、IT系試験では紙上で行う必要がある
 例:
 ①「x ← 10」xは10、yは未定
 ②「y ← 20」xは10、yは20
 ③「x ←  y」xは20、yは20

テキスト p.22 コンソールアプリケーションを作ろう

・C#のコンソールアプリケーションは必要最小限の記述で動作するプログラムが作れる
・Cのプログラムでいう「本文」のみ記述すればOK

① 起動したら「新しいプロジェクトの作成」
② 言語バーを「すべての言語」から「C#」「すべてのプラットフォーム」「すべてのプロジェクトの種類」にする
③「コンソールアプリ」「次へ」
④「場所」の「...」をクリックして「C:\Users\ユーザ名\source\repos」で「新しいフォルダー」
⑤ フォルダ名を「ca」にしてEnterで確定し「フォルダの選択」
 ※場所が「C:\Users\ユーザ名\source\repos\ca\」となればOK
⑥「次へ」
⑦ フレームワークはそのままで「作成」
⑧ サンプルの1行(コメント1行を含めて2行)のプログラムが表示され、ソースファイル名「Program.cs」になる
⑨ 試しに「デバッグ」「デバッグなしで実行」で動作を確認

Program.csの解説

・Console.WriteLine("Hello, World!")は、C言語のprintfに近い文
・引数として文字列、数値、式など多くが指定できる万能表示文
・自動的に改行する

演算子

・数式「1 + 2」の「+」のようにデータを扱う処理に名前をつけたものが演算子
・よく使われる演算子には記号があてはめられており「+」は主に「加算せよ」
・2つのデータを扱う演算子を2項演算子という
・よって、数式「1 + 2」の「+」は2項+演算子という
・2値の減算には2項-演算子を用い、積算には2項*演算子、除算には2項/演算子を用いる
・また、余りを求める剰余算には2項%演算子を用いる

演習 Program.cs

・20と5の和差積商と剰余を表示せよ

作成例

Console.WriteLine(20 + 5);
Console.WriteLine(20 - 5);
Console.WriteLine(20 * 5);
Console.WriteLine(20 / 5);
Console.WriteLine(20 % 5);

実行結果

25
15
100
4
0

四則演算とプログラム

・C/C#などでは整数と実数(小数点がある値)は別扱いになり、四則演算の内容も変わる
 ※ 10は整数、10.0は実数
・整数どうしの四則演算の結果は整数になり、小数点以下が出ても切り捨てる
 例: 10 + 3 ⇒ 13 だが、10 / 3 ⇒ 3.33333… ⇒ 3になる
・実数を含む四則演算の結果は実数になり、小数点以下が常にある(0であれば表示されない場合もある)
 例: 10 + 3.14 ⇒ 13.14 だが、10 * 3.14 ⇒ 31.4 になる
・計算結果が実数の場合、桁数によっては誤差が出る
・「+」「-」は「*」「/」より優先度が低いので注意。
 例: 上辺3下辺4高さ5の台形の面積 3 + 4 * 5 / 2 = 3 + 10 = 13 ではない!
・優先度を変えるにはカッコでくくる
 例: 上辺3下辺4高さ5の台形の面積 (3 + 4) * 5 / 2 = 35 / 2 = 17.5 が正しい!

演習 ex001.cs

・15と36の平均値を小数点以下を付けて表示しよう

作成例

Console.WriteLine((15 + 36) / 2.0);

別解

Console.WriteLine((15.0 + 36) / 2);

演習 ex001.csの続き

・変数aを15で初期化する(var a = 15;)
・変数bを36で初期化する(var b = 36;)
・aとbの平均値を小数点以下を付けて表示しよう

作成例

var a = 15; //変数aを15で初期化する
var b = 36; //変数bを36で初期化する
Console.WriteLine((a + b) / 2.0); //aとbの平均値を小数点以下を付けて表示

演習 ex001.csの続き2

・変数aを15で初期化する
・変数bを36で初期化する
・変数cをaとbの平均値(小数点以下あり)で初期化する
・cを表示しよう

作成例

var a = 15; //変数aを15で初期化する
var b = 36; //変数bを36で初期化する
var c = (a + b) / 2.0; //変数cをaとbの平均値(小数点以下あり)で初期化する
Console.WriteLine(c); //cを表示

Console.WriteLineによる書式付きの表示

・C言語の「printf("彼は%d倍早い!", 3);」のような値の埋め込み表示もできる
・1つ埋め込むときの書式: Console.WriteLine("彼は{0}倍早い!", 3);

提出演習 ex001.csの続き3

・変数aを15で初期化する
・変数bを36で初期化する
・変数cをaとbの平均値(小数点以下あり)で初期化する
・cを「平均は25.5」のように「平均は」を付けて表示しよう

ソースの提出方法(.cs)

① Visual Studio を終了
② サイトの「提出フォーム」
③「提出」の「Browse Files」
④ ソースファイルのあるフォルダ(例:C:\Users\ユーザ名\source\repos\cs)を開く
⑤ その中の「ConsoleApp●」の中の「ConsoleApp●」を開くとソースが並んでいる(●は1または2)
⑥ 提出したいソース(今回はex001.cs)をクリックし右クリックして「圧縮(ZIP形式)フォルダー」
⑦ できた「ex001.zip」をクリックして「開く」
⑦「100%」が表示されたら準備完了
⑧「お名前」「メッセージ」を入力し「送信」
 ※ メッセージには感想、要望、質問、ペースについてなどを
⑨ 何度も送信してOK

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です