# include <iostream.h> # include <fstream.h> # include <string.h> # include <stdlib.h> # include <conio.h> int main( ) { clrscr( ); fstream File("CP-13.txt",ios::in|ios::nocreate); if(!File) { cout<<"Unable to open the input file."<<endl; cout<<"Press any key to exit."<<endl; getch( ); exit(EXIT_FAILURE); } char Data[100]={NULL}; do { strset(Data,NULL); File.getline(Data,80,'\n'); if(strcmpi(Data,"0")==0) break; char *Ptr=NULL; int rows=0; int columns=0; Ptr=strtok(Data," "); rows=atoi(Ptr); Ptr=NULL; Ptr=strtok(NULL,"\n"); columns=atoi(Ptr); char Array2d[50][50]={NULL}; for(int count_1=0;count_1<rows;count_1++) File.getline(Array2d[count_1],80); int direction=0; do { char Temp[50][50]={NULL}; if(direction==0) { cout<<Array2d[0]; for(int count_2=1;count_2<rows;count_2++) strcpy(Temp[(count_2-1)],Array2d[count_2]); rows--; } elseif(direction==1) { for(int count_3=0;count_3<rows;count_3++) { cout<<Array2d[count_3][(columns-1)]; Array2d[count_3][(columns-1)]=NULL; } for(int count_4=0;count_4<rows;count_4++) strcpy(Temp[count_4],Array2d[count_4]); columns--; } elseif(direction==2) { cout<<strrev(Array2d[(rows-1)]); for(int count_5=0;count_5<(rows-1);count_5++) strcpy(Temp[count_5],Array2d[count_5]); rows--; } elseif(direction==3) { for(int count_6=(rows-1);count_6>=0;count_6--) cout<<Array2d[count_6][0]; for(int count_7=0;count_7<rows;count_7++) { for(int count_8=1;count_8<columns;count_8++) Temp[count_7][(count_8-1)]=Array2d[count_7][count_8]; } columns--; } direction++; if(direction==4) direction=0; for(int count_9=0;count_9<50;count_9++) { strset(Array2d[count_9],NULL); strcpy(Array2d[count_9],Temp[count_9]); } if(rows==0) break; } while(1); cout<<endl; } while(1); File.close( ); getch( ); return 0; }
No comments:
Post a Comment