number-recognize/maker.cpp

79 lines
1.8 KiB
C++

#include <bits/stdc++.h>
using namespace std;
string numbers[10][5];
string sign[2][5];
string datas[5];
int randn(int x=0,int y=100){
return ( rand() % (y - x + 1) ) + x ;
}
string sstr(int a){
string c="";
while(a){
c+=a%10+'0';
a/=10;
}
string b = "";
for(int i=0;i<c.size();i++){
b+=c[c.size()-i-1];
}
return b;
}
int main(){
srand(time(0));
freopen("mode.txt","r",stdin);
freopen("input.txt","w",stdout);
for(int i=0;i<12;i++){
for(int j=0;j<5;j++){
if(i<10) getline(cin,numbers[i][j]);
else getline(cin,sign[i-10][j]);
// cout << numbers[i][j] << endl;
}
// cout << endl;
}
// for(int i=0;i<12;i++){
// if(i<10){
// for(int j=0;j<5;j++){
// datas[j]+=numbers[i][j];
// }
// }
// else{
// for(int j=0;j<5;j++){
// datas[j]+=sign[i-10][j];
// }
// }
// }
for(int i=0;i<=10;i++){
if(i%2==1){
int signx = randn(1,2);
for(int j=0;j<5;j++){
datas[j]+=sign[signx-1][j];
}
int space = randn(1,6);
for(int j=0;j<5;j++){
for(int k=0;k<space;k++) datas[j] += " ";
}
}
else {
int num = randn(1,100);
string s = sstr(num);
for(int j=0;j<s.size();j++){
for(int k=0;k<5;k++){
datas[k] += numbers[s[j]-'0'][k];
}
int space = randn(1,6);
for(int x=0;x<5;x++){
for(int k=0;k<space;k++) datas[x] += " ";
}
}
}
}
for(int j=0;j<5;j++){
cout << datas[j] << endl;
}
return 0;
}