初级天翼
我老家不在合肥,我老家的房子门口,就是火车站。
从小,我就非常喜欢看火车,一直看到大。
今年,我没回老家,火车瘾犯了,为了过瘾,我编了这么一个火车模拟器:
PS:车厢可能会有些失真,会出现闪屏的现象,请谅解。
#include <bits/stdc++.h>
#include <windows.h>
using namespace std;
void color(int corcorcor){
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),corcorcor+240);
}
string train[50][20]={
{
" ◢■■■■■■ ",
"◢■■和谐■■ ",
"◥■■■■■■ ",
"■◥■■■■■■■",
" ● ● "
}
,{
" ■■■■■■◣ ",
" ■■和谐■■◣",
" ■■■■■■◤",
"■■■■■■■◤■",
" ● ● "
},{
" ◢■■■■■■◣ ",
" ■■东风四号■■ ",
" ■■■■■■■■ ",
"■◥■■■■■■◤■",
" ● ● "
},{
" ◢■■■■■■◣ ",
"◢■■■和谐■■■◣",
"◥■■■■■■■■◤",
"■◥■■■■■■◤■",
" ● ● "
},{
" ",
" ■■■■■■ ",
" ■■■■■■ ",
"■■■■■■■■",
" ● ● "
},{
" ▄▄▄▄▄▄ ",
" ■‖■■‖■ ",
" ■‖■■‖■ ",
"■■■■■■■■",
" ● ● "
},{
" ■■■■■ ",
" ■■■■■ ",
" ■■■■■ ",
"■■■■■■■■■",
" ● ● "
},{
" ",
" ",
" ",
"■■■■■■■■■",
" ● ● "
},{
" ◢■■■■■■◣ ",
" ■■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
},{
" ◢■■■■■■◣ ",
" ■■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
},{
" ◢■■■■■■◣ ",
" ■■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
},{
" ◢■■■■■■◣ ",
" ■■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ●◥■■◤● "
},{
" ◢■■■■◣ ",
" ■■■■■■ ",
" ◥‖■■‖◤ ",
"■■■■■■■■",
" ● ● ",
},{
" ■■■■■■■ ",
" ■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
},{
" ■■■■■■■ ",
" ■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
},{
" ◢■■■■■■◣ ",
"◢■■■和谐■■■◣",
"◥■■■■■■■■◤",
"■◥■■■■■■◤■",
" ● ● "
},{
" ◢■■■■◣ ",
" ■‖■■‖■ ",
" ■‖■■‖■ ",
"■■■■■■■■",
" ● ● "
},{
" ■■■■ ",
" ■■■■■■ ",
" ■■■■■■ ",
"■■■■■■■■",
" ● ● "
}
};
int col[50][10][15]={
{//第一个
{15,2,2,2,2,2,2,2,15},
{2,2,2,4,4,2,2,15,15},
{2,2,2,2,2,2,2,15,15},
{0,2,2,2,2,2,2,2,0},
{15,15,8,15,15,15,8,15,15}
}
,{//第二个
{15,2,2,2,2,2,2,2,15},
{15,15,2,2,4,4,2,2,2},
{15,15,2,2,2,2,2,2,2},
{0,2,2,2,2,2,2,2,0},
{15,15,8,15,15,15,8,15,15}
},{//第三个
{15,10,10,10,10,10,10,10,10,15},
{15,10,10,2,2,2,2,10,10,15},
{15,10,10,10,10,10,10,10,10,15},
{0,10,10,10,10,10,10,10,10,0},
{15,15,8,15,15,15,15,8,15,15},
},{//第四个
{15,1,1,1,1,1,1,1,1,15},
{1,1,1,1,4,4,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1},
{0,1,1,1,1,1,1,1,1,0},
{15,15,8,15,15,15,15,8,15,15},
},{//第五个
{15,15,15,15,15,15},
{15,0,0,0,0,0,0,15},
{15,0,0,0,0,0,0,15},
{0,0,0,0,0,0,0,0},
{15,15,8,15,15,8,15,15}
},{//第六个
{15,0,0,0,0,0,0,15},
{15,0,0,0,0,0,0,15},
{15,0,0,0,0,0,0,15},
{0,0,0,0,0,0,0,0},
{15,15,8,15,15,8,15,15}
},{//第七个
{15,15,1,1,1,1,1,15,15},
{15,15,1,1,1,1,1,15,15},
{15,15,1,1,1,1,1,15,15},
{0,4,4,4,4,4,4,4,0},
{15,15,8,15,15,15,8,15,15}
},{//第八个
{15,15,15,15,15,15,15,15,15},
{15,15,15,15,15,15,15,15,15},
{15,15,15,15,15,15,15,15,15},
{0,4,4,4,4,4,4,4,0},
{15,15,8,15,15,15,8,15,15}
},{//第九个
{15,2,2,2,2,2,2,2,2,15},
{15,2,8,8,2,2,8,8,2,15},
{15,2,2,2,2,2,2,2,2,15},
{0,2,2,2,2,2,2,2,2,0},
{15,15,8,15,15,15,15,8,15,15}
},{//第十个
{15,12,12,12,12,12,12,12,12,15},
{15,12,8,8,12,12,8,8,12,15},
{15,12,12,12,12,12,12,12,12,15},
{0,12,12,12,12,12,12,12,12,0},
{15,15,8,15,15,15,15,8,15,15}
},{//第十一个
{15,1,1,1,1,1,1,1,1,15},
{15,1,8,8,1,1,8,8,1,15},
{15,1,1,1,1,1,1,1,1,15},
{0,1,1,1,1,1,1,1,1,0},
{15,15,8,15,15,15,15,8,15,15}
},{//第十二个
{15,12,12,12,12,12,12,12,12,15},
{15,12,12,12,12,12,12,12,12,15},
{15,12,12,12,12,12,12,12,12,15},
{0,12,12,12,12,12,12,12,12,0},
{15,15,8,12,12,12,12,8,15,15}
},{//第十三个
{15,6,6,6,6,6,6,15},
{15,6,6,6,6,6,6,15},
{15,6,0,6,6,0,6,15},
{0,0,0,0,0,0,0,0},
{15,15,8,15,15,8,15,15}
},{//第十四个
{15,3,3,3,3,3,3,3,15,15},
{15,3,3,3,3,3,0,3,15,15},
{15,3,3,3,3,3,3,3,3,15},
{0,3,3,3,3,3,3,3,3,0},
{15,15,8,15,15,15,8,15,15,15}
},{
{15,15,3,3,3,3,3,3,3,15},
{15,15,3,0,3,3,3,3,3,15},
{15,3,3,3,3,3,3,3,3,15},
{0,3,3,3,3,3,3,3,3,0},
{15,15,15,8,15,15,15,8,15,15}
},{
{15,2,2,2,2,2,2,2,2,15},
{2,2,2,2,4,4,2,2,2,2},
{2,2,2,2,2,2,2,2,2,2},
{0,2,2,2,2,2,2,2,2,0},
{15,15,8,15,15,15,15,8,15,15},
},{
{15,0,0,0,0,0,0,15},
{15,0,0,0,0,0,0,15},
{15,0,0,0,0,0,0,15},
{0,0,0,0,0,0,0,0},
{15,15,8,15,15,8,15,15}
},{
{15,15,1,1,1,1,15,15},
{15,0,0,0,0,0,0,15},
{15,0,0,0,0,0,0,15},
{0,0,0,0,0,0,0,0},
{15,15,8,15,15,8,15,15}
}
};
int len[30]={9,9,10,10,8,8,9,9,10,10,10,10,8,10,10,10,8,8};
int way,cx[1010],co[10][1000010];
string str[10],tmp[10];
int main(){
system("cls");
color(0);
system("cls");
color(1);
cout<<"火";
Sleep(1000);
cout<<"车";
Sleep(1000);
cout<<"模";
Sleep(1000);
cout<<"拟";
Sleep(1000);
cout<<"器";
Sleep(1000);
color(0);
cout<<"\n\n曹灿阳原创,请勿抄袭!!!";
Sleep(2000);
system("cls");
while(1){
memset(cx,0,sizeof(cx));
memset(co,0,sizeof(co));
for(int i=0;i<10;i++){
str[i]="";
tmp[i]="";
}
system("cls");
color(0);
printf("请输入火车的方向:(0表示从左往右,非0表示从右往左,Ctrl+C退出)");
cin>>way;
if(way!=0)
way=1;
for(int i=0;i<18;i++){
for(int j=0;j<5;j++){
for(int k=0;k<train[i][j].size();k+=2){
color(col[i][j][k/2]);
printf("%c%c",train[i][j][k],train[i][j][k+1]);
}
printf("\n");
}
color(0);
printf("第%d号车厢(包括火车头)\n\n",i);
}
color(0);
printf("请输入火车车厢编号(随便多少个都行,从左到右依次为车厢从左到右的顺序),空格隔开,异常值不读,按-1结束输入。\n");
int idx=1;
while(1){
cin>>cx[idx];
if(cx[idx]==-1)
break;
if(cx[idx]>=18||cx[idx]<0){
continue;
}
idx++;
}
idx--;
if(idx==0){
color(0);
cout<<"一节车厢也没有,你在输入空气???";
Sleep(1000);
continue;
}
int l=0;
for(int i=1;i<=idx;i++){
for(int k=0;k<len[cx[i]];k++){
for(int j=0;j<5;j++){
co[j][l]=col[cx[i]][j][k];
}
l++;
}
for(int j=0;j<5;j++){
str[j]+=train[cx[i]][j];
}
}
l--;
system("cls");
color(0);
system("cls");
if(way==0){
cout<<(char)7;
for(int i=l;i>=0;i--){
for(int j=0;j<5;j++){
//str[j].substr(max(i,0)*2,(min(i+38,l)-i+1)*2);
for(int k=max(i,0)*2;k<=min(i+38,l)*2;k+=2){
color(co[j][k/2]);
//cout<<;
cout<<str[j].substr(k,2);
}
printf("\n");
}
color(0);
printf("〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
Sleep(75);
system("cls");
}
string kongge="";
for(int i=1;i<=38;i++){
kongge+=" ";
for(int j=0;j<5;j++){
cout<<kongge;
for(int k=0;k<=min((38-i)*2,l*2);k+=2){
color(co[j][k/2]);
cout<<str[j].substr(k,2);
}
printf("\n");
}
color(0);
printf("〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
Sleep(75);
system("cls");
}
printf("\n\n\n\n\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
cout<<(char)7;
Sleep(1000);
system("cls");
}else{
cout<<(char)7;
for(int i=38;i>=0;i--){
for(int j=0;j<5;j++){
for(int k=1;k<=i;k++)
cout<<" ";
for(int k=0;k<=min(l,38-i)*2;k+=2){
color(co[j][k/2]);
cout<<str[j].substr(k,2);
}
printf("\n");
}
color(0);
printf("〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
Sleep(75);
system("cls");
}
for(int i=1;i<=l;i++){
//左:i 右:min(l,i+38)
for(int j=0;j<5;j++){
for(int k=i*2;k<=min(38+i,l)*2;k+=2){
color(co[j][k/2]);
cout<<str[j].substr(k,2);
}
printf("\n");
}
color(0);
printf("〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
Sleep(75);
system("cls");
}
printf("\n\n\n\n\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
cout<<(char)7;
Sleep(1000);
system("cls");
}
}
return 0;
}
顺便跟大家分享一件事:我们班有一次春游,路上看到从合肥南站有高铁开过咱们班大巴车上面的铁路桥,我们班坐的车顿时炸了……
曹灿阳在2021-02-20 13:10:57追加了内容
@江见匀 @张帆 @王泽宇 @沙宸安 @侯平仄 @江子周 @蔡乐毅 @周明轩 @王子豪 @陈维锴 @康曦 @陈曦 @王淼 @王子逸
快领代码!
曹灿阳在2021-02-20 21:07:39追加了内容
ding
曹灿阳在2021-02-28 18:36:18追加了内容
@王子耀 最新的在这!
#include <bits/stdc++.h>
#include <windows.h>
#include<conio.h>
#include<time.h>
using namespace std;
void color(int corcorcor,int corcorcor2){
corcorcor2*=16;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),corcorcor+corcorcor2);
}
string train[50][20]={
{
" ◢■■■■■■ ",
"◢■■和谐■■ ",
"◥■■■■■■ ",
"■◥■■■■■■■",
" ● ● "
}
,{
" ■■■■■■◣ ",
" ■■和谐■■◣",
" ■■■■■■◤",
"■■■■■■■◤■",
" ● ● "
},{
" ◢■■■■■■◣ ",
" ■■东风四号■■ ",
" ■■■■■■■■ ",
"■◥■■■■■■◤■",
" ● ● "
},{
" ◢■■■■■■◣ ",
"◢■■■和谐■■■◣",
"◥■■■■■■■■◤",
"■◥■■■■■■◤■",
" ● ● "
},{
" ",
" ■■■■■■ ",
" ■■■■■■ ",
"■■■■■■■■",
" ● ● "
},{
" ▄▄▄▄▄▄ ",
" ■‖■■‖■ ",
" ■‖■■‖■ ",
"■■■■■■■■",
" ● ● "
},{
" ■■■■■ ",
" ■■■■■ ",
" ■■■■■ ",
"■■■■■■■■■",
" ● ● "
},{
" ",
" ",
" ",
"■■■■■■■■■",
" ● ● "
},{
" ◢■■■■■■◣ ",
" ■■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
},{
" ◢■■■■■■◣ ",
" ■■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
},{
" ◢■■■■■■◣ ",
" ■■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
},{
" ◢■■■■■■◣ ",
" ■■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ●◥■■◤● "
},{
" ◢■■■■◣ ",
" ■■■■■■ ",
" ◥‖■■‖◤ ",
"■■■■■■■■",
" ● ● "
},{
" ■■■■■■■ ",
" ■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
},{
" ■■■■■■■ ",
" ■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
},{
" ◢■■■■■■◣ ",
"◢■■■和谐■■■◣",
"◥■■■■■■■■◤",
"■◥■■■■■■◤■",
" ● ● "
},{
" ◢■■■■◣ ",
" ■‖■■‖■ ",
" ■‖■■‖■ ",
"■■■■■■■■",
" ● ● "
},{
" ■■■■ ",
" ■■■■■■ ",
" ■■■■■■ ",
"■■■■■■■■",
" ● ● "
},{
" ◢■■■■◣ ",
" ■‖■■‖■ ",
" ■‖■■‖■ ",
"■■■■■■■■",
" ● ● "
},{
" ▄▄▄▄▄▄ ",
" ■‖■■‖■ ",
" ■‖■■‖■ ",
"■■■■■■■■",
" ● ● "
},{
" ▄▄▄▄▄▄ ",
" ■‖■■‖■ ",
" ■‖■■‖■ ",
"■■■■■■■■",
" ● ● "
},{
" ◢■■■■◣ ",
" ■‖■■‖■ ",
" ■‖■■‖■ ",
"■■■■■■■■",
" ● ● "
},{
" ",
" ■■■■■■ ",
" ■■■■■■ ",
"■■■■■■■■",
" ● ● "
},{
" ■■■■ ",
" ■■■■■■ ",
" ■■■■■■ ",
"■■■■■■■■",
" ● ● "
},{
" ■■■■ ",
" ■■■■■■ ",
" ■■■■■■ ",
"■■■■■■■■",
" ● ● "
},{
" ",
" ■■■■■■ ",
" ■■■■■■ ",
"■■■■■■■■",
" ● ● "
},{
" ■■■■■ ",
" ■■■■■ ",
" ■■■■■ ",
"■■■■■■■■■",
" ● ● "
},{
" ",
" ",
" ",
"■■■■■■■■■",
" ● ● "
},{
" ◢■■■■■■ ■■■■■■◣ ",
"◢■■和谐■■■--■■■和谐■■◣",
"◥■■■■■■■--■■■■■■■◤",
"■◥■■■■■■ ■■■■■■◤■",
" ● ● ● ● "
},{
" ◢■■■■■■ ■■■■■■◣ ",
"◢■■和谐■■■--■■■和谐■■◣",
"◥■■■■■■■--■■■■■■■◤",
"■◥■■■■■■ ■■■■■■◤■",
" ● ● ● ● "
},{
" ◢■■■■■■◣ ",
" ■快速铁路运输■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
},{
" ■■■■■■ ",
" ■■■■■■ ",
" ◥■■■■◤ ",
"■■■■■■■■",
" ● ● "
},{
" ◢■■■■◣ ",
" ■■■■■■ ",
" ◥‖■■‖◤ ",
"■■■■■■■■",
" ● ● "
},{
" ◢■■■■■■◣ ",
" ■■■■■■■■ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
},{
" ■■■■■■ ",
" ‖■■■■■■‖ ",
" ■■■■■■■■ ",
"■■■■■■■■■■",
" ● ● "
}
};
int col[50][10][20]={
{//第一个
{15,2,2,2,2,2,2,2,15},
{2,2,2,4,4,2,2,15,15},
{2,2,2,2,2,2,2,15,15},
{0,2,2,2,2,2,2,2,0},
{15,15,8,15,15,15,8,15,15}
}
,{//第二个
{15,2,2,2,2,2,2,2,15},
{15,15,2,2,4,4,2,2,2},
{15,15,2,2,2,2,2,2,2},
{0,2,2,2,2,2,2,2,0},
{15,15,8,15,15,15,8,15,15}
},{//第三个
{15,10,10,10,10,10,10,10,10,15},
{15,10,10,2,2,2,2,10,10,15},
{15,10,10,10,10,10,10,10,10,15},
{0,10,10,10,10,10,10,10,10,0},
{15,15,8,15,15,15,15,8,15,15},
},{//第四个
{15,1,1,1,1,1,1,1,1,15},
{1,1,1,1,4,4,1,1,1,1},
{1,1,1,1,1,1,1,1,1,1},
{0,1,1,1,1,1,1,1,1,0},
{15,15,8,15,15,15,15,8,15,15},
},{//第五个
{15,15,15,15,15,15,15,15},
{15,0,0,0,0,0,0,15},
{15,0,0,0,0,0,0,15},
{0,0,0,0,0,0,0,0},
{15,15,8,15,15,8,15,15}
},{//第六个
{15,0,0,0,0,0,0,15},
{15,0,0,0,0,0,0,15},
{15,0,0,0,0,0,0,15},
{0,0,0,0,0,0,0,0},
{15,15,8,15,15,8,15,15}
},{//第七个
{15,15,1,1,1,1,1,15,15},
{15,15,1,1,1,1,1,15,15},
{15,15,1,1,1,1,1,15,15},
{0,4,4,4,4,4,4,4,0},
{15,15,8,15,15,15,8,15,15}
},{//第八个
{15,15,15,15,15,15,15,15,15},
{15,15,15,15,15,15,15,15,15},
{15,15,15,15,15,15,15,15,15},
{0,4,4,4,4,4,4,4,0},
{15,15,8,15,15,15,8,15,15}
},{//第九个
{15,2,2,2,2,2,2,2,2,15},
{15,2,8,8,2,2,8,8,2,15},
{15,2,2,2,2,2,2,2,2,15},
{0,2,2,2,2,2,2,2,2,0},
{15,15,8,15,15,15,15,8,15,15}
},{//第十个
{15,12,12,12,12,12,12,12,12,15},
{15,12,8,8,12,12,8,8,12,15},
{15,12,12,12,12,12,12,12,12,15},
{0,12,12,12,12,12,12,12,12,0},
{15,15,8,15,15,15,15,8,15,15}
},{//第十一个
{15,1,1,1,1,1,1,1,1,15},
{15,1,8,8,1,1,8,8,1,15},
{15,1,1,1,1,1,1,1,1,15},
{0,1,1,1,1,1,1,1,1,0},
{15,15,8,15,15,15,15,8,15,15}
},{//第十二个
{15,12,12,12,12,12,12,12,12,15},
{15,12,12,12,12,12,12,12,12,15},
{15,12,12,12,12,12,12,12,12,15},
{0,12,12,12,12,12,12,12,12,0},
{15,15,8,12,12,12,12,8,15,15}
},{//第十三个
{15,6,6,6,6,6,6,15},
{15,6,6,6,6,6,6,15},
{15,6,0,6,6,0,6,15},
{0,0,0,0,0,0,0,0},
{15,15,8,15,15,8,15,15}
},{//第十四个
{15,3,3,3,3,3,3,3,15,15},
{15,3,3,3,3,3,0,3,15,15},
{15,3,3,3,3,3,3,3,3,15},
{0,3,3,3,3,3,3,3,3,0},
{15,15,8,15,15,15,8,15,15,15}
},{
{15,15,3,3,3,3,3,3,3,15},
{15,15,3,0,3,3,3,3,3,15},
{15,3,3,3,3,3,3,3,3,15},
{0,3,3,3,3,3,3,3,3,0},
{15,15,15,8,15,15,15,8,15,15}
},{
{15,2,2,2,2,2,2,2,2,15},
{2,2,2,2,4,4,2,2,2,2},
{2,2,2,2,2,2,2,2,2,2},
{0,2,2,2,2,2,2,2,2,0},
{15,15,8,15,15,15,15,8,15,15},
},{
{15,0,0,0,0,0,0,15},
{15,0,0,0,0,0,0,15},
{15,0,0,0,0,0,0,15},
{0,0,0,0,0,0,0,0},
{15,15,8,15,15,8,15,15}
},{
{15,15,1,1,1,1,15,15},
{15,0,0,0,0,0,0,15},
{15,0,0,0,0,0,0,15},
{0,0,0,0,0,0,0,0},
{15,15,8,15,15,8,15,15}
},{
{15,2,2,2,2,2,2,15},
{15,2,2,2,2,2,2,15},
{15,2,2,2,2,2,2,15},
{0,2,2,2,2,2,2,0},
{15,15,8,15,15,8,15,15}
},{
{15,2,2,2,2,2,2,15},
{15,2,2,2,2,2,2,15},
{15,2,2,2,2,2,2,15},
{0,2,2,2,2,2,2,0},
{15,15,8,15,15,8,15,15}
},{
{15,4,4,4,4,4,4,15},
{15,4,4,4,4,4,4,15},
{15,4,4,4,4,4,4,15},
{0,4,4,4,4,4,4,0},
{15,15,8,15,15,8,15,15}
},{
{15,4,4,4,4,4,4,15},
{15,4,4,4,4,4,4,15},
{15,4,4,4,4,4,4,15},
{0,4,4,4,4,4,4,0},
{15,15,8,15,15,8,15,15}
},{
{15,15,15,15,15,15,15,15},
{15,4,4,4,4,4,4,15},
{15,4,4,4,4,4,4,15},
{0,4,4,4,4,4,4,0},
{15,15,8,15,15,8,15,15}
},{
{15,15,1,1,1,1,15,15},
{15,4,4,4,4,4,4,15},
{15,4,4,4,4,4,4,15},
{0,4,4,4,4,4,4,0},
{15,15,8,15,15,8,15,15}
},{
{15,15,1,1,1,1,15,15},
{15,2,2,2,2,2,2,15},
{15,2,2,2,2,2,2,15},
{0,2,2,2,2,2,2,0},
{15,15,8,15,15,8,15,15}
},{
{15,15,15,15,15,15,15,15},
{15,2,2,2,2,2,2,15},
{15,2,2,2,2,2,2,15},
{0,2,2,2,2,2,2,0},
{15,15,8,15,15,8,15,15}
},{
{15,15,1,1,1,1,1,15,15},
{15,15,1,1,1,1,1,15,15},
{15,15,1,1,1,1,1,15,15},
{0,0,0,0,0,0,0,0,0},
{15,15,8,15,15,15,8,15,15}
},{
{15,15,15,15,15,15,15,15,15},
{15,15,15,15,15,15,15,15,15},
{15,15,15,15,15,15,15,15,15},
{0,0,0,0,0,0,0,0,0},
{15,15,8,15,15,15,8,15,15}
},{
{15,1,1,1,1,1,1,1,15,1,1,1,1,1,1,1,15},
{1,1,1,4,4,1,1,1,0,1,1,1,4,4,1,1,1},
{1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1},
{0,1,1,1,1,1,1,1,15,1,1,1,1,1,1,1,0},
{15,15,8,15,15,15,8,15,15,15,8,15,15,15,8,15,15}
},{
{15,2,2,2,2,2,2,2,15,2,2,2,2,2,2,2,15},
{2,2,2,4,4,2,2,2,0,2,2,2,4,4,2,2,2},
{2,2,2,2,2,2,2,2,0,2,2,2,2,2,2,2,2},
{0,2,2,2,2,2,2,2,15,2,2,2,2,2,2,2,0},
{15,15,8,15,15,15,8,15,15,15,8,15,15,15,8,15,15}
},{
{15,12,12,12,12,12,12,12,12,15},
{15,12,4,4,4,4,4,4,12,15},
{15,12,12,12,12,12,12,12,12,15},
{0,12,12,12,12,12,12,12,12,0},
{15,15,8,15,15,15,15,8,15,15}
},{
{15,8,8,8,8,8,8,15},
{15,8,8,8,8,8,8,15},
{15,8,8,8,8,8,8,15},
{0,0,0,0,0,0,0,0},
{15,15,8,15,15,8,15,15}
},{
{15,8,8,8,8,8,8,15},
{15,8,8,8,8,8,8,15},
{15,8,0,8,8,0,8,15},
{0,0,0,0,0,0,0,0},
{15,15,8,15,15,8,15,15}
},{
{15,6,6,6,6,6,6,6,6,15},
{15,6,6,6,6,6,6,6,6,15},
{15,6,6,6,6,6,6,6,6,15},
{0,6,6,6,6,6,6,6,6,0},
{15,15,8,15,15,15,15,8,15,15}
},{
{15,15,4,4,4,4,4,4,15,15},
{15,0,4,4,4,4,4,4,0,15},
{15,4,4,4,4,4,4,4,4,15},
{0,4,4,4,4,4,4,4,4,0},
{15,15,8,15,15,15,15,8,15,15}
}
};
int len[50]={9,9,10,10,8,8,9,9,10,10,10,10,8,10,10,10,8,8,8,8,8,8,8,8,8,8,9,9,17,17,10,8,8,10,10};
int way,cx[10010],co[10][1000010];
string str[10],tmp[10];
int main(){
//HideCursor();
system("cls");
color(0,15);
system("cls");
printf("\n\n\n\t\t\t\t");
color(4,15);
cout<<"火";
Sleep(1000);
system("cls");
printf("\n\n\n\t\t\t\t");
color(1,15);
cout<<"火";
color(4,15);
cout<<"车";
Sleep(1000);
system("cls");
printf("\n\n\n\t\t\t\t");
color(1,15);
cout<<"火车";
color(4,15);
cout<<"模";
Sleep(1000);
system("cls");
printf("\n\n\n\t\t\t\t");
color(1,15);
cout<<"火车模";
color(4,15);
cout<<"拟";
Sleep(1000);
system("cls");
printf("\n\n\n\t\t\t\t");
color(1,15);
cout<<"火车模拟";
color(4,15);
cout<<"器";
Sleep(1000);
system("cls");
color(1,15);
printf("\n\n\n\t\t\t\t");
cout<<"火车模拟器";
Sleep(1000);
color(0,15);
cout<<"\n\n\t\t\t";
printf("曹灿阳原创,请勿抄袭!!!");
Sleep(2000);
system("cls");
while(1){
memset(cx,0,sizeof(cx));
memset(co,0,sizeof(co));
for(int i=0;i<10;i++){
str[i]="";
tmp[i]="";
}
system("cls");
color(0,15);
system("cls");
color(0,15);
printf("请输入火车的方向:(0表示从左往右,非0表示从右往左,Ctrl+C退出)");
cin>>way;
if(way!=0)
way=1;
for(int i=0;i<35;i++){
for(int j=0;j<5;j++){
for(int k=0;k<train[i][j].size();k+=2){
color(col[i][j][k/2],15);
printf("%c%c",train[i][j][k],train[i][j][k+1]);
}
printf("\n");
}
color(0,15);
printf("第%d号车厢(包括火车头)\n\n",i);
}
color(0,15);
printf("请输入火车车厢编号(车厢数不多于10000,多余的部分自动省略,\n从左到右依次为车厢从左到右的顺序),\n空格隔开,异常值不读,按-1结束输入。\n");
int idx=1;
while(1){
cin>>cx[idx];
if(cx[idx]==-1||idx==10000)
break;
if(cx[idx]>=35||cx[idx]<0){
continue;
}
idx++;
}
idx--;
if(idx==0){
color(0,15);
cout<<"一节车厢也没有,你在输入空气???";
Sleep(1000);
continue;
}
int l=0;
for(int i=1;i<=idx;i++){
for(int k=0;k<len[cx[i]];k++){
for(int j=0;j<5;j++){
co[j][l]=col[cx[i]][j][k];
}
l++;
}
for(int j=0;j<5;j++){
str[j]+=train[cx[i]][j];
}
}
l--;
system("cls");
color(0,15);
system("cls");
if(way==0){
cout<<(char)7;
for(int i=l;i>=0;i--){
printf("\n\n\n\n\n\n\n\n\n\n");
for(int j=0;j<5;j++){
//str[j].substr(max(i,0)*2,(min(i+38,l)-i+1)*2);
for(int k=max(i,0)*2;k<=min(i+38,l)*2;k+=2){
color(co[j][k/2],15);
//cout<<;
cout<<str[j].substr(k,2);
}
printf("\n");
}
color(0,15);
printf("〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
Sleep(75);
system("cls");
}
string kongge="";
for(int i=1;i<=38;i++){
printf("\n\n\n\n\n\n\n\n\n\n");
kongge+=" ";
for(int j=0;j<5;j++){
cout<<kongge;
for(int k=0;k<=min((38-i)*2,l*2);k+=2){
color(co[j][k/2],15);
cout<<str[j].substr(k,2);
}
printf("\n");
}
color(0,15);
printf("〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
Sleep(75);
system("cls");
}
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
cout<<(char)7;
Sleep(1000);
system("cls");
}else{
cout<<(char)7;
for(int i=38;i>=0;i--){
printf("\n\n\n\n\n\n\n\n\n\n");
for(int j=0;j<5;j++){
for(int k=1;k<=i;k++)
cout<<" ";
for(int k=0;k<=min(l,38-i)*2;k+=2){
color(co[j][k/2],15);
cout<<str[j].substr(k,2);
}
printf("\n");
}
color(0,15);
printf("〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
Sleep(75);
system("cls");
}
for(int i=1;i<=l;i++){
printf("\n\n\n\n\n\n\n\n\n\n");
//左:i 右:min(l,i+38)
for(int j=0;j<5;j++){
for(int k=i*2;k<=min(38+i,l)*2;k+=2){
color(co[j][k/2],15);
cout<<str[j].substr(k,2);
}
printf("\n");
}
color(0,15);
printf("〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
Sleep(75);
system("cls");
}
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓");
cout<<(char)7;
Sleep(1000);
system("cls");
color(0,15);
system("cls");
}
}
return 0;
}
资深天翼
然后呢?按哪个键?
PS:我小时侯也喜欢车,不过是玩具车,也有玩具枪(受一个朋友的影响)
陈曦在2021-02-20 13:21:49追加了内容
有趣的🚆👍
高级启示者
↑ 输入-1就行了
沙宸安在2021-02-20 13:20:02追加了内容
再按回车,你就可以看到火车在那里咔咔咔QwQ
沙宸安在2021-02-20 13:20:08追加了内容
再按回车,你就可以看到火车在那里咔咔咔QwQ
高级启示者
切回正题~
总的来讲,做得很用心,但可玩性不太高,不是特别耐玩。
但我觉得这段代码适合初学者研究。
这应该不是您的开发方向,总之,玩玩乐乐就好啦。
资深守护
蒟蒻回复:
@我干嘛?
蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻蒟蒻