Advertisement
Guest User

Untitled

a guest
Mar 21st, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.87 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #define kreska puts("------------------------------------------------------------------------------------------------------------------");
  4. #include <math.h>
  5.  
  6. int rozmiar_tab(int *n)
  7. {
  8. printf("Wpisz rozmiar szachownicy NxN gdzie N>=4:");
  9. scanf("%i",n);
  10. while(*n<4)
  11. {
  12. printf("\nBlad N jest mniejsze niz 4.\nWpisz N ponownie (N>=4):");
  13. scanf("%i",n);
  14. }
  15. return *n;
  16. }
  17.  
  18. int main()
  19. {
  20. kreska;
  21. printf("Witaj Alicjo\!\nRozwiazywany problem:\n\t Zagadnienie 8 hetmanow\n");
  22. int i,j,n,k,a,b,c;
  23. a=0;
  24. rozmiar_tab(&n);
  25. int s[n][n];
  26. if(n%2)
  27. b=(n+1)/2;
  28. else b=n/2;
  29.  
  30. for(c=0,k=0;c!=n&&k<n;k++)
  31. {
  32. a=0;
  33. c=0;
  34. for(i=0;i<n;i++)
  35. for(j=0;j<n;j++)
  36. s[i][j]=0;
  37. s[0][k]=1;
  38. c++;
  39. for(i=0;i<n;i++)
  40. {
  41. for(j=0;j<n;j++)
  42. {
  43. if(s[i][j]==1&&i+1<n&&j+2<n)
  44. {
  45. s[i+1][j+2]=1;
  46. if(s[i][j]==1&&a<1&&n%2)
  47. {
  48. s[i+b][j+1]=1;
  49. a=1;
  50. c++;
  51.  
  52. }
  53. if(s[i][j]==1&&a<1)
  54. {
  55. s[i+b][j-1]=1;
  56. c++;
  57. a=1;
  58.  
  59. }
  60. c++;
  61. }
  62. }
  63. }
  64. }
  65.  
  66.  
  67.  
  68.  
  69. system("cls");
  70. printf("Pierwsze mozliwe rozwiazanie\n");
  71. kreska;
  72. for(i=0;i<n;i++)
  73. {
  74. for(j=0;j<n;j++)
  75. {
  76. printf("\t%i",s[i][j]);
  77. }
  78. puts("\n");
  79. }
  80. kreska;
  81. getchar();
  82. return 0;
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement