Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <unistd.h>
- #include <stdio.h>
- using namespace std;
- unsigned int delay;
- int main() {
- delay = 1000;
- int r = 0, c = 0, cap = 8;
- int b[cap][cap] = { };
- b[r][c] = 1; //r & c are 0
- while(c != cap){
- ROW: //row
- for(int i = 0; i <= c; i++){
- usleep(delay);
- cout << r << " ROW LOOP\n";
- if(b[r][i] == 1){
- cout << i << " Found Queen\n";
- r++;
- goto ROW;
- // if piece found goto next row
- }
- goto COL;
- // on empty row goto COL
- }
- COL: //column
- usleep(delay);
- cout << c << " COL LOOP\n";
- for(int j = 0; j <= r; j++){
- if(b[j][c] == 1){
- cout << j << " Found Queen\n";
- c++;
- goto COL;
- }
- goto DGL;
- }
- DGL: //diagonal
- for(int k = 1; k <= c; k++){
- usleep(delay);
- cout << k << " DGL LOOP\n";
- if(b[r-k][c-k] == 1){
- cout << k << " exit ONE\n";
- r++;
- goto ROW;
- }
- if(r < cap) {
- printf("Place Queen At %d , %d\n", r , c );
- b[r][c] = 1;
- cout << k << " exit TWO\n";
- goto ROW;
- } else if (r >= cap) {
- r = 0;
- cout << k << " exit THREE\n";
- goto ROW;
- }
- }
- }
- for (int i = 0; i < cap; i++){
- for (int j = 0; j < cap; j++){
- cout << b[i][j];
- }
- cout << endl;
- }
- cout << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement