1102問題解決レポート
この問題の難点は、図形と数字のマッピング関係をどのようにするかであり、この問題を始めたばかりの頃、0から9という10の数字の各数字を1つのモデルにマッピングしようとした.でもやってみたら、だめな気がした.
問題は1つの数字ではなく、1行の数字であり、伸縮可能であるからだ.だから他の方法を考えなければなりません.これらの電子時計の数字の特徴を観察すると、実際には7つの筆画の構成があり、それぞれ7つの部分に定義されています.
それぞれの筆画にどの数字が含まれているかを記録します.こうして1から7までの7つの筆画を記録した.このように一度に出力して1行移動するには5行の出力プログラムが必要である.
問題は1つの数字ではなく、1行の数字であり、伸縮可能であるからだ.だから他の方法を考えなければなりません.これらの電子時計の数字の特徴を観察すると、実際には7つの筆画の構成があり、それぞれ7つの部分に定義されています.
それぞれの筆画にどの数字が含まれているかを記録します.こうして1から7までの7つの筆画を記録した.このように一度に出力して1行移動するには5行の出力プログラムが必要である.
#include
#include
#include
int main() {
int s;
char num[9];
int i,j;
int emp;
char b1[11]={'-',' ','-','-',' ','-','-','-','-','-'};
char b2[11]={'|','|',' ',' ','|','|','|',' ','|','|'};
char b3[11]={'|',' ','|','|','|',' ',' ','|','|','|'};
char b4[11]={' ',' ','-','-','-','-','-',' ','-','-'};
char b5[11]={'|','|','|',' ',' ',' ','|',' ','|',' '};
char b6[11]={'|',' ',' ','|','|','|','|','|','|','|'};
char b7[11]={'-',' ','-','-',' ','-','-',' ','-','-'};
while(1) {
memset(num,0,9);
scanf("%d %s",&s,num);
if(s==0) break;
for(i=0;i