配列変数に格納されている数値同士を比較するプログラムを実行してみよう💖💖💖



ソーラー「わくわく😊


今日はどこまで進もうかな?


まずは


次のプログラムをご覧ください」

👇


#include <stdio.h>


int main(void) {


int hairetu[5];


hairetu[0] = 0;

hairetu[1] = 1;

hairetu[2] = 2;

hairetu[3] = 3;

hairetu[4] = 4;


int i = 0;


for (i = 0; i< 5; i++) {

printf("%d", hairetu[i]);

}



printf("\n");

//🌞改行しています


return 0;

}


ビルド実行結果


01234


ソーラー「このとき


配列変数

hairetu[0]

には

0が

配列変数

hairetu[1]

には

1が代入されています。


もちろん


配列変数

hairetu[1]

に格納されている数値1のほうが

配列変数

hairetu[0]

に格納されている数値0

より

おおきいよね。」


ソーラー「ここで


配列変数

hairetu[0]

に格納されている数値



配列変数

hairetu[1]

に格納されている数値


を比較するプログラムを


if文を用いて


実行してみたいと思います。


そのプログラムは以下のようになるかな」

👇


#include <stdio.h>


int main(void) {


int hairetu[5];


hairetu[0] = 0;

hairetu[1] = 1;

hairetu[2] = 2;

hairetu[3] = 3;

hairetu[4] = 4;


int i = 0;


for (i = 0; i< 5; i++) {

printf("%d", hairetu[i]);

}



printf("\n");


if (hairetu[0] <= hairetu[1]){


printf("%d\n", hairetu[1]);


}


return 0;

}


ビルド実行結果


01234

1


ソーラー「このプログラムは


配列変数hairetu[1]に格納されている数値が


配列変数hairetu[0]に格納されている数値より


大きければ


配列変数hairetu[1]に格納されている数値を


表示するプログラムなんだよ。


もし


配列変数hairetu[1]に格納されている数値が


配列変数hairetu[0]に格納されている数値より


小さければ


何も表示されないんだよ。」


アレサ「簡単ですの」


ソーラー「では


次は


配列変数hairetu[1]に格納されている数値が


配列変数hairetu[0]に格納されている数値より


大きければ


配列変数hairetu[1]



配列変数hairetu[0]


を代入した後


配列変数hairetu[1]に格納されている数値をprintf出力表示し


(つまり 


配列変数hairetu[0]に格納されている数値



配列変数hairetu[1]に格納されている数値


を比べてみて


配列変数hairetu[1]に格納されている数値1より


小さい方の


配列変数hairetu[0]に格納されている数値0が


コマンドプロンプト画面にprintf出力表示されることになります



solarplexussより)


配列変数hairetu[1]に格納されている数値が


配列変数hairetu[0]に格納されている数値より


小さければ


そのまま


配列変数hairetu[1]に格納されている数値を


printf出力表示するプログラムを実行してみたいと思います



😊  😊


もっと簡単にいうと


配列変数hairetu[0]に格納されている数値



配列変数hairetu[1]に格納されている数値


を比べてみて


小さいほうの数値が表示されることになります


😊  😊




#include <stdio.h>


int main(void) {


int hairetu[5];


hairetu[0] = 0;

hairetu[1] = 1;

hairetu[2] = 2;

hairetu[3] = 3;

hairetu[4] = 4;



int i = 0;


for (i = 0; i< 5; i++) {


hairetu[i] = i;


printf("%d", hairetu[i]);

}


printf("\n");


if (hairetu[0] <= hairetu[1]) {


hairetu[1] = hairetu[0];


printf("%d\n", hairetu[1]);


}


else


printf("%d\n", hairetu[1]);


return 0;


}


ビルド実行結果


01234

0


アレサ「


配列変数hairetu[0]に格納されている数値が0

配列変数hairetu[1]に格納されている数値が1


の状態では


if (hairetu[0] <= hairetu[1]) {


hairetu[1] = hairetu[0];


printf("%d\n", hairetu[1]);


}



if文の条件式


hairetu[0] <= hairetu[1]


を満たしているので


{}内の命令文

👇


hairetu[1] = hairetu[0];


printf("%d\n", hairetu[1]);


が実行されることになります。


printf("%d\n", hairetu[1]);



実行結果は


hairetu[1]にはhairetu[0]の格納している数値0が代入されているので


0


となっています。」


ソーラー「そうなんだ


       🍋配列変数hairetu[0]に格納されている数値🍋


               と


       🍋配列変数hairetu[1]に格納されている数値🍋


を比較して


配列変数hairetu[1]に格納されている数値のほうが1と大きいので


  🍓配列変数hairetu[0]に格納されている小さい方の数値0が🍓


コマンドプロンプト画面にprintf出力表示されたわけだね。



では逆に



配列変数hairetu[0]に格納されている数値が1で

配列変数hairetu[1]に格納されている数値が0


なら


ビルド実行結果はどうなるかな?


#include <stdio.h>


int main(void) {


int hairetu[5];


hairetu[0] = 1;

hairetu[1] = 0;

hairetu[2] = 2;

hairetu[3] = 3;

hairetu[4] = 4;

/*🌞🌞🌞hairetu[0] には1がhairetu[0] には0が代入されています*/



int i = 0;


for (i = 0; i< 5; i++) {


hairetu[i] = i;


printf("%d", hairetu[i]);

}


printf("\n");


if (hairetu[0] <= hairetu[1]) {


hairetu[1] = hairetu[0];


printf("%d\n", hairetu[1]);


}


else


printf("%d\n", hairetu[1]);


return 0;


}


ビルド実行結果


10234

0



ソーラー「このプログラムでは


配列変数hairetu[1]に格納されている数値1が


配列変数hairetu[0]に格納されている数値0より


小さいので


if (hairetu[0] <= hairetu[1]) {


hairetu[1] = hairetu[0];


printf("%d\n", hairetu[1]);


}


の条件式の


hairetu[0] <= hairetu[1]


を満たしていないので


else(代わりに)


printf("%d\n", hairetu[1]);


が実行されることになります。


hairetu[1]に格納されている数値は0だったので


ビルド実行結果は0になります。



        🍋配列変数hairetu[1]に格納されている数値🍋


                と


        🍋配列変数hairetu[0]に格納されている数値🍋


                を


          比較して小さい方の数値


     🍓配列変数hairetu[1]に格納されている数値🍓



printf出力表示されています




今までの結果をまとめると



配列変数hairetu[0]に格納されている数値が0

配列変数hairetu[1]に格納されている数値が1


の場合でも


配列変数hairetu[0]に格納されている数値が1

配列変数hairetu[1]に格納されている数値が0


の場合でも


常に


小さい方の数値


コマンドプロンプト画面に表示されることになります。


いつでも


配列変数hairetu[0]と配列変数hairetu[1]


の配列変数に格納されている数値で小さい方の数値



コマンドプロンプト画面に表示することができるってわけなんだね。


このプログラムを実行すれば


もし


配列変数hairetu[0]に格納されている数値

配列変数hairetu[1]に格納されている数値


がわかっていなくても



配列変数hairetu[0]と配列変数hairetu[1]


の配列変数に格納されている数値で小さい方の数値



コマンドプロンプト画面に表示することができるんだ。



このプログラムが


🌞配列変数に格納されている数値同士の大きさを比較する基本的なプログラム🌞


となっているんだよ


逆に


配列変数hairetu[0]に格納されている数値

配列変数hairetu[1]に格納されている数値


のうち


大きい方の数値を


コマンドプロンプト画面に表示したければ


今のプログラムの


if else文を


if (hairetu[0] <= hairetu[1]) {


printf("%d\n", hairetu[1]);


}


else{


hairetu[1]=hairetu[0];


printf("%d\n", hairetu[1]);

}

に変更すれば


配列変数hairetu[0]に格納されている数値

配列変数hairetu[1]に格納されている数値


のうち


大きい方の数値を


コマンドプロンプト画面に表示することができます



配列変数hairetu[0]に格納されている数値を0

配列変数hairetu[1]に格納されている数値を1


として


その場合のプログラムを実行してみます。

👇

#include <stdio.h>


int main(void) {


int hairetu[5];


hairetu[0] = 0;

hairetu[1] = 1;

hairetu[2] = 2;

hairetu[3] = 3;

hairetu[4] = 4;




int i = 0;


for (i = 0; i< 5; i++) {


hairetu[i] = i;


printf("%d", hairetu[i]);

}



printf("\n");


if (hairetu[0] <= hairetu[1]) {


printf("%d\n", hairetu[1]);


}


else {


hairetu[1]=hairetu[0];


printf("%d\n", hairetu[1]);

}


return 0;


}


ビルド実行結果


01234

1


アレサ「


配列変数hairetu[0]に格納されている数値0

配列変数hairetu[1]に格納されている数値1


のうち大きい方の数値1がコマンドプロンプト画面に表示されました。」


ソーラー「やったね。


じゃあ


今度は今のプログラムで


配列変数hairetu[0]に格納されている数値を1

配列変数hairetu[1]に格納されている数値を0


に変更したプログラムを


実行してみようかな


ちゃんと


配列変数hairetu[0]に格納されている大きい方の数値1



コマンドプロンプト画面に表示されるかな?」


#include <stdio.h>


int main(void) {


int hairetu[5];


hairetu[0] = 1;

hairetu[1] = 0;

hairetu[2] = 2;

hairetu[3] = 3;

hairetu[4] = 4;


/*配列変数hairetu[0]に格納されている数値を1に

配列変数 hairetu[1]に格納されている数値を0に変更しました*/


int i = 0;


for (i = 0; i< 5; i++) {


hairetu[i] = i;


printf("%d", hairetu[i]);

}



printf("\n");


if (hairetu[0] <= hairetu[1]) {


printf("%d\n", hairetu[1]);


}


else {


hairetu[1]=hairetu[0];


printf("%d\n", hairetu[1]);

}


return 0;


}


ビルド実行結果


01234

1



アレサ「この場合でも


配列変数hairetu[0]に格納されている数値1

配列変数hairetu[1]に格納されている数値0


のうち大きい方の数値1が表示されました。」


ソーラー「このプログラムは


配列変数hairetu[0]に格納されている数値

配列変数hairetu[1]に格納されている数値


を比較して


大きい方の数値を表示するプログラムというわけだね。」




  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る