Advertisement
Guest User

Untitled

a guest
Jan 21st, 2020
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.68 KB | None | 0 0
  1. // templatka_projekt9.cpp : Ten plik zawiera funkcję „main”. W nim rozpoczyna się i kończy wykonywanie programu.
  2. //
  3.  
  4. #include <iostream>
  5. #include "stdafx.h"
  6. #include <stdlib.h>
  7. #include <stdio.h>
  8.  
  9. //zdefiniowac stala CHESSBOARD_SIZE -wymiar szachownicy (< 0) 5,6 lub moze 7
  10. #define CHESSBOARD_SIZE 6
  11. #define HORSE_MOVES 8
  12. // zdefiniowac typ wyliczeniowy od FIRST to EIGHT
  13. //zdefiniowac typ strukt Point (dwa inty x,y)
  14. int move( int** pChessBoard, int nDim, int move, int x, int y, int* px, int* py, Point* pHorseMoves );
  15.  
  16. pChessBoard - szachownica( kwadratowa ) - pamieta ruchy
  17. nDim - rozmiar szachownicy
  18. move - numer mozliwgo ruchu konia szachowego( indeks pHorseMoves )
  19. x, y - indeksy w tablicy skad wykonujemy kolejny ruch
  20. px, py - nowe wspolrzedne
  21. pHorseMoves - offesty( x i y ) dla obliczenia kolejnej mozliwosci skosku konia z zadanego punktu
  22.  
  23. int root( int** pChessBoard, int nDim, int moveNo, int x, int y, Point * pHorseMoves )
  24. /*
  25. pChessBoard - szachownica o rozmiarze nDim
  26. moveNo - numer ruchu (do sprawdzenia czy juz wszystkie pola odwiedzone == nDim*nDim)
  27. x,y - wspol skad robimy kolejny ruch
  28. pHorseMoves - offsety (x i y) wszystkich mozliwych skokow konia z zadanej pozycji
  29. */
  30.  
  31. int** createChessboard( int nDim );
  32. // kreuje i zeruje tablice, mozna uzyc calloc
  33.  
  34. void freeChessboard( int*** pChessBoard );
  35. //zwalnia tablice
  36.  
  37. void pointChessBoard( int** pChessBoard, int nDim );
  38. //wypisuje szachownice
  39. int main()
  40. {
  41. //odczytac nastawienie początkowe x0, y0 konika szachowgo z parametrow
  42.  
  43. // sprawdzenie czy poprawne
  44.  
  45. //wykreowac dynamicznie tablice kwadratową o rozmiarze CHESSBOARD_SIZE
  46. //zdefiniowac tablica do pamietania mozliwych offestow ruchów
  47. Point HorseMove[HORSE_MOVES]= {......}
  48. }
  49.  
  50.  
  51. /*
  52. Kwadratowa Szachownica (n x n)
  53. liczba mozliwych sciezek konika szachowego
  54. 1x1 1
  55. 2x2 0 //nie ma ruchu
  56. 3x3 0 //
  57. */
  58. // Uruchomienie programu: Ctrl + F5 lub menu Debugowanie > Uruchom bez debugowania
  59. // Debugowanie programu: F5 lub menu Debugowanie > Rozpocznij debugowanie
  60.  
  61. // Porady dotyczące rozpoczynania pracy:
  62. // 1. Użyj okna Eksploratora rozwiązań, aby dodać pliki i zarządzać nimi
  63. // 2. Użyj okna programu Team Explorer, aby nawiązać połączenie z kontrolą źródła
  64. // 3. Użyj okna Dane wyjściowe, aby sprawdzić dane wyjściowe kompilacji i inne komunikaty
  65. // 4. Użyj okna Lista błędów, aby zobaczyć błędy
  66. // 5. Wybierz pozycję Projekt > Dodaj nowy element, aby utworzyć nowe pliki kodu, lub wybierz pozycję Projekt > Dodaj istniejący element, aby dodać istniejące pliku kodu do projektu
  67. // 6. Aby w przyszłości ponownie otworzyć ten projekt, przejdź do pozycji Plik > Otwórz > Projekt i wybierz plik sln
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement