C言語 二重ループ市松模様を作ってみた。

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

おはこんばんにちは!!!
うにゃうにゃエンジニアの猫です(=^・^=)mm

今年2021年、新型コロナウイルスで延期になったオリンピックはどうなることやらですが、
C言語で市松模様を作ってみたいと思います。
市松模様は互い違いに色が塗ってある模様なので、多重ループ(二重ループ)を使って表します。

簡単に図を書来ます。

この図を見ると、ある規則に気づきました。
色が塗ってあるところは、i=0ではj=0,2,4,6,8…
と、iが偶数の所ではjも偶数になっていて、
i=1では色が塗ってあるjはj=1,3,5,7と基数になっています。

つまり、iとj共に偶数 または iとj共に奇数 だったら塗る、
そうでなければ白ということになります。

剰余演算子を使っています。%で表すと、
偶数でしたら%2であまりがゼロ、基数でしたら%2であまりが1です。

これをC言語で書く場合は、
「i%2==0 AND j%2==0」OR 「i%2==1 AND j%2==1」
なので、ANDを&&、ORを||と書いて、

「(i%2==0 && j%2==0) || (i%2==1 && j%2==1))」

になります。
この条件が当てはまる所を■、当てはまらない所を□としてコードを組んでみました。

実行してみると、このようになりました。

プログラムはコチラになります。

#include <stdio.h>
void ichimatsu(int i,int j){
if((i%2==0 && j%2==0) || (i%2==1 && j%2==1)){
printf(“■”);
}else{
printf(“□”);
}
}
int main(void){
for(int i=0;i<10;i++){
for(int j=0;j<20;j++){
ichimatsu(i,j);
}
printf(“\n”);
}
}

最後まで読んで下さってありがとうございました。
愛してます(=^・^=)mm

参考図書
基本情報技術者試験のアルゴリズムでお世話になった本

C言語の入門講座を終えた今のインプット本
基本情報技術者試験の復習にもなります。
C言語を使ってコンピュータの仕組みが理解出来る実験プログラムがあり、
50の実験がそれぞれ独立しているので、短編小説を読んでいる様に読めてコードを入力して動作させています。

C言語自作サンプルメニューへ
これからプログラミングをはじめる方へ
基本情報技術者試験トップへ
息抜きに(=^・^=)写真で癒し

投稿者: nekosiestr

プログラミング学習中のロスジェネ(就職氷河期世代)の発達障害者です。 宜しくお願いします。 趣味で写真を撮っています。 プログラミングは、GAS/HTML/CSS/JavaScript/jQuery/PHP、 発達障害は、自閉症スペクトラムASD/ADHD、その他双極性障害やHSP(5人に1人の繊細さん)などの生きづらさを抱えておりますが、それでも楽しく生きて行きたいです!! 写真は、以前はコンパクトデジカメ、現在は、OLYMPUSミラーレス一眼を使っています。