[ Bootta @ 23.04.2007. 17:26 ] @
Evo primjer kako sam napravio program koji odreljuje polja na koja moze da dodje kraljica i t predstavio vizuelno: Code: #include<conio.h> #include<math.h> int suma(int x[],int n) { int i,suma; for(i=0,suma=0;i<n;i++) suma+=x[i]; return suma; } main() { int n,m,i1,i2,x,y,i; int sredina(); char niz[9][9]; printf(" 1 2 3 4 5 6 7 8\n - - - - - - - -\n1 | | | | | | | | |\n - - - - - - - -\n2 | | | | | | | | |\n - - - - - - - -\n3 | | | | | | | | |\n - - - - - - - -\n4 | | | | | | | | |\n - - - - - - - -\n5 | | | | | | | | |\n - - - - - - - -\n6 | | | | | | | | |\n - - - - - - - -\n7 | | | | | | | | |\n - - - - - - - -\n8 | | | | | | | | |\n - - - - - - - -"); printf("\n\nUnesite broj redova(n) i broj kolona(m) (0<=n,m=<8): "); scanf("%d%d",&n,&m); printf("\nUnesite poziciju kraljice(y,x)(1<=n,m=<8):"); scanf("%d%d",&y,&x); printf("\nSada se niz(ovi) ucitava(ju);\n"); for(i1=1;i1<=n;i1++) { for(i2=1;i2<=m;i2++) { if(i1==y||i2==x||abs(y-i1)==abs(x-i2)) { niz[i1][i2]='*'; goto step; } niz[i1][i2]='0'; step: } } printf("Sada se niz(ovi) ispisuje/ju: \n"); printf(" 0 = polja na koja kraljica ne moze doci\n"); printf(" * = polja na koja kraljica moze doci\n"); printf(" k = pozicija kraljice\n"); niz[y][x]='k'; printf(" "); for(i=1;i<=m;i++) printf("%d ",i); for(i1=1;i1<=n;i1++) { printf("\n "); for(i=1;i<=m;i++) printf("- "); printf("\n%d |",i1); for(i2=1;i2<=m;i2++) { printf("%c|",niz[i1][i2]); } } printf("\n - - - - - - - -"); getch(); } Jel neko zna napravit program koji ce odredit za koliko ce najmanje poteza konj koji stoji pocetnoj poziciji(n,m) doci na odredjenu poziciju(n,m) n=redni broj reda m=redni broj kolone |