にしのクエスト2

情報処理技術者試験と資格学校講師の日常

にしのクエスト2

情報処理国家試験・プログラミングのお勉強ブログ にしのクエスト2

(固定記事)
札幌生まれ、IT育ち、パソオタっぽいやつは大体友達っ!

にしのあゆみ と、えぞたっペん がおくる情報処理技術者
試験とITな生活。それが、「にしのクエスト2」です!

このブログきっかけで、コンピュータやIT業界に興味を持
ってくれたら、何よりも嬉しいです!

IT資格同人誌!?電子書籍で発売中!よろしくです!
※全面刷新のため、間もなく読めなくなります。
   
ITパスポート試験について知りたい方はこの記事を読んでね。
ITパスポート試験について - にしのクエスト2

Unityで学ぶプログラミング 夏休みC#の基礎(10)練習問題

さて、ここで練習問題をやってみましょう。

ここまでの知識でできるはずですが、難しい問題
もあります。答えは見ても大丈夫ですよ!

※次回は番外編です。

練習問題

(初級)
課題1 10から1までのカウントダウンを表示する
    プログラムを書きなさい
ヒント:i--

課題2 合計するプログラムを改造し、平均値を求め
    るプログラムを書きなさい。
ヒント:合計割る個数は?

(中級)
課題3 1から50までの数値を5つランダムに生成
    し、配列の中に入れるプログラムを書きなさ
    い。
ヒント:作っては入れて、次へ。作って入れて、次へ。


課題4 配列にある数字の中に偶数があるかどうかを
    判定するプログラムを作成しなさい。
ヒント:偶数ってなんだっけ?


(上級)
課題5 5つの配列内の数字の中から、最大値を出力
    するプログラムを作成しなさい。
ノーヒント

 

続きを読む

Unityで学ぶプログラミング 夏休みC#の基礎(9)繰り返し

さてさて、前回の続きですよ。
※いったん、この講座は第10回でお休みしますよ

繰り返し

同じ処理を何度も繰り返して行いたいときがある。
こういう場合は繰り返しの構文for文を使用する。


公式

for(初期値;限界値;増分){
繰り返す内容
}

さっぱりわからんと思うので具体的に
 
 
for (int i = 0; i < 10; i++)
        {
            Debug.Log(i);
        }


この作例では、後ろからプログラムを読むと

・iを出力しなさい Debug.Log(a);
・iを1ずつ増やしながら i++
・iが10になるまで i<10
・iの初期値は0だよ(int i=0)

となって、処理結果は
f:id:koharuwest:20190814085219p:plain
こうなる。

0から9までの数字が連続して出力されてちゅごい
ね!

配列を組み合わせる

配列と一緒に使うことが多い。一緒に使うと強力な
処理ができる。

        int a=0;
        int[] b = { 50, 22, 61, 14, 37 };
            for (int i = 0; i < 5; i++)
            {
                a = a + b[i];
            }
            Debug.Log(a);


f:id:koharuwest:20190814085549p:plain


これは配列の中身を合計するプログラムである。ぜひ、
やってみてくだしゃい。

f:id:koharuwest:20190701223246p:plain


それでは、この続きは次回に!

Unityで学ぶプログラミング 夏休みC#の基礎(8)配列

さてさて、前回の続きですよ。
※いったん、この講座は第10回でお休みしますよ

配列

配列というのは、変数という箱に仕切りをつけて、
複数のモノを入れておくイメージが正しい。お饅頭
の仕切りの入った箱こそが、配列なのだ!

配列があると、一つの変数で複数の値を保持させる

例えば。

int a;
a={0,1,2,3,4}


これはaという変数に、0,1,2,3,4の5つのデータを保
持させている。

この中から「3」を取り出す場合は、

Debug.Log(a[4]); 

のように指定する。
の中は取り出したい配列の番号を入れる。これは左
から0,1,2,3,4の順となる。

つまり、1を取り出そうとするならa[2]と指定する。

ここで、配列を利用して、おみくじプログラムを作っ
てみよう。(こないだも作ったけど)

int a;
string[] b={"大吉","中吉","小吉","末吉","凶"};
a=Random.Range(0,5);
Debug.Log (b[a]);

このように、配列を利用するとプログラムを短くでき
ることがわかる。

f:id:koharuwest:20190701223246p:plain


それでは、この続きは次回に!

Unityで学ぶプログラミング 夏休みC#の基礎(7)条件分岐

さてさて、前回の続きですよ。

条件分岐

IFをつかって条件分岐させてみましょう。

条件分岐とは、条件によって処理を分けることを言
います。こういう場合は、こうして。ああいう場合
は、アレして。

という形です。

(公式)
if( 条件 ){
真の場合の処理
}else{
偽の場合の処理
}


書く場合、中括弧を落としがちですので、注意しま
しょう。また、プログラミングでは条件の「==」と
「=」では意味が違います。

皆さんの知ってる=は==で表現します。


こんなプログラムを書いてみましょう。

int a;

//数字を代入し

a=Random.Range(1,3);

//条件分岐
if(a==1){
Debug.Log ("ラッキー");
}else{
Debug.Log ("ドンマイ");
}


1から3までの乱数を発生させて、1になった時だけ
「ラッキー」が出てきます。何度も繰り返し再生と停
止を押して、コンソールの表示内容が変わることを確
認してください。

複雑に条件分岐させる

ちょっと難しくなります。あまりにも分岐が多いと面
倒くさいです。

int a;

//英語の点数は
a=Random.Range(0,100);

//条件分岐
if(a>=80){
Debug.Log ("成績は5");
}else if(a>=70){
Debug.Log ("成績は4");
}else if(a>=50){
Debug.Log ("成績は3");
}else if(a>=30){
Debug.Log ("成績は2");
}else{
Debug.Log ("やばいよやばいよ~!");
}


※条件を a>=80ではなく、a>=30から始めるとう
まくいきません。

「数値の大きい方から先に条件を設定する」と、
覚えてください。

スイッチ

同じことを書くのにswitchという構文があります。
これは、結果がわかりやすい(一定数に決まって
いる)ものであれば有効な書き方です。

int a;

a=Ramdom.Range(1,4);

//条件分岐
switch(a){

case 1:
Debug.Log ("大吉");
break;

case 2:
Debug.Log ("中吉");
break;

case 3:
Debug.Log ("大凶");
break;


//それ以外の処理
default:
break;
}

※なお、switch文ではdefault breakがないと、
エラーの処理ができずプログラムが停止する
原因になります。

f:id:koharuwest:20190701223246p:plain


それでは、この続きは次回に!