#include #include #include #include struct st { char fig; int riad; char stlp; }; st cierny[16]; st biely[16]; st ckon[16]; st bkon[16]; int czor(int*,char); int bzor(int*,char); int main() { //vyplnime polozku fig v structox 'a' - nex nerobime setko do zblbnutia for(int d=0;d<16;d++) { cierny[d].fig='a'; biely[d].fig='a'; ckon[d].fig='a'; bkon[d].fig='a'; } int r=9; char s='a'; s--; int i=0; int j=0; //ideme nacitavat char c; for(int e=1;e<17;e++) { c=getc(stdin); while(c != 13) { if(c=='+') { r--; continue; } if(c=='|') s++; if(toupper(c)==c) { biely[i].fig=c; biely[i].riad=r; biely[i].stlp=s; i++; } else { cierny[j].fig=c; cierny[j].stlp=s; cierny[j].riad=r; j++; } c=getc(stdin); } }//mame nacitane setko :) uz to len zaradit a vypisat. int a=0; for(int b=0;b<=15;b++) { if(czor(&a,'k')!=0) a++; if(czor(&a,'q')!=0) a++; if(czor(&a,'r')!=0) a++; if(czor(&a,'b')!=0) a++; if(czor(&a,'n')!=0) a++; if(czor(&a,'p')!=0) a++; } a=0; for(int b=0;b<=15;b++) { if(bzor(&a,'K')!=0) a++; if(bzor(&a,'Q')!=0) a++; if(bzor(&a,'R')!=0) a++; if(bzor(&a,'B')!=0) a++; if(bzor(&a,'N')!=0) a++; if(bzor(&a,'P')!=0) a++; }//uz je to aj zaradene. este vypis printf("White: "); a=0; while(bkon[a].fig!='a') { if(bkon[a].fig!='P') printf("%c%c%i",bkon[a].fig,bkon[a].stlp,bkon[a].riad); else printf("%c%i",bkon[a].stlp,bkon[a].riad); if(bkon[a+1].fig!='a' && a<15) printf(","); } printf("\n"); printf("Black: "); a=0; while(ckon[a].fig!='a') { if(ckon[a].fig!='p') printf("%c%c%i",toupper(ckon[a].fig),ckon[a].stlp,ckon[a].riad); else printf("%c%i",ckon[a].stlp,ckon[a].riad); if(ckon[a+1].fig!='a' && a<15) printf(","); } return 1; } int czor(int* a,char x) { int ok=0; int i=0; int p=0; int p2=0; st pom[16]; st pom2[16]; for(int d=0;d<15;d++) { pom[d].fig='a'; pom2[d].fig='a'; } while(cierny[i].fig!='a' && i<16) { if(cierny[i].fig==x) { pom[p].fig=cierny[i].fig; pom[p].stlp=cierny[i].stlp; pom[p].riad=cierny[i].riad; p++; ok=1; } i++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==8) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==7) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==6) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==5) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==4) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==3) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==2) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==1) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='a') { ckon[*a].fig=pom2[p2].fig; ckon[*a].stlp=pom2[p2].stlp; ckon[*a].riad=pom2[p2].riad; *a++; } p2++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='b') { ckon[*a].fig=pom2[p2].fig; ckon[*a].stlp=pom2[p2].stlp; ckon[*a].riad=pom2[p2].riad; *a++; } p2++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='c') { ckon[*a].fig=pom2[p2].fig; ckon[*a].stlp=pom2[p2].stlp; ckon[*a].riad=pom2[p2].riad; *a++; } p2++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='d') { ckon[*a].fig=pom2[p2].fig; ckon[*a].stlp=pom2[p2].stlp; ckon[*a].riad=pom2[p2].riad; *a++; } p2++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='e') { ckon[*a].fig=pom2[p2].fig; ckon[*a].stlp=pom2[p2].stlp; ckon[*a].riad=pom2[p2].riad; *a++; } p2++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='f') { ckon[*a].fig=pom2[p2].fig; ckon[*a].stlp=pom2[p2].stlp; ckon[*a].riad=pom2[p2].riad; *a++; } p2++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='g') { ckon[*a].fig=pom2[p2].fig; ckon[*a].stlp=pom2[p2].stlp; ckon[*a].riad=pom2[p2].riad; *a++; } p2++; } return ok; } int bzor(int* a,char x) { int ok=0; int i=0; int p=0; int p2=0; st pom[16]; st pom2[16]; for(int d=0;d<15;d++) { pom[d].fig='a'; pom2[d].fig='a'; } while(biely[i].fig!='a' && i<16) { if(biely[i].fig==x) { pom[p].fig=biely[i].fig; pom[p].stlp=biely[i].stlp; pom[p].riad=biely[i].riad; p++; ok=1; } i++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==1) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==2) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==3) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==4) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==5) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==6) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==7) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p=0; while(pom[p].fig!='a' && p<10) { if(pom[p].riad==8) { pom2[p2].fig=pom[p].fig; pom2[p2].stlp=pom[p].stlp; pom2[p2].riad=pom[p].riad; p2++; } p++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='a') { bkon[*a].fig=pom2[p2].fig; bkon[*a].stlp=pom2[p2].stlp; bkon[*a].riad=pom2[p2].riad; *a++; } p2++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='b') { bkon[*a].fig=pom2[p2].fig; bkon[*a].stlp=pom2[p2].stlp; bkon[*a].riad=pom2[p2].riad; *a++; } p2++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='c') { bkon[*a].fig=pom2[p2].fig; bkon[*a].stlp=pom2[p2].stlp; bkon[*a].riad=pom2[p2].riad; *a++; } p2++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='d') { bkon[*a].fig=pom2[p2].fig; bkon[*a].stlp=pom2[p2].stlp; bkon[*a].riad=pom2[p2].riad; *a++; } p2++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='e') { bkon[*a].fig=pom2[p2].fig; bkon[*a].stlp=pom2[p2].stlp; bkon[*a].riad=pom2[p2].riad; *a++; } p2++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='f') { bkon[*a].fig=pom2[p2].fig; bkon[*a].stlp=pom2[p2].stlp; bkon[*a].riad=pom2[p2].riad; *a++; } p2++; } p2=0; while(pom2[p2].fig!='a' && p2<10) { if(pom2[p2].stlp=='g') { bkon[*a].fig=pom2[p2].fig; bkon[*a].stlp=pom2[p2].stlp; bkon[*a].riad=pom2[p2].riad; *a++; } p2++; } return ok; }