Переделать код на C#. 8 ферзей

Узнай цену своей работы

Формулировка задачи:

Помогите переделать код на си # C++
Листинг программы
  1. #include <iostream>
  2. using namespace std;
  3. int board[8][8];
  4. void resetQ(int i, int j)
  5. {
  6. for(int x=0; x<8; ++x)
  7. {
  8. --board [x][j];
  9. --board [i][x];
  10. int k;
  11. k = j-i+x;
  12. if (k >= 0 && k<8)
  13. --board[x][k];
  14. k = j+i-x;
  15. if (k >= 0 && k<8)
  16. --board[x][k];
  17. }
  18. board[i][j] = 0;
  19. }
  20. void setQ(int i, int j)
  21. {
  22. for(int x=0; x<8; ++x)
  23. {
  24. ++board [x][j];
  25. ++board [i][x];
  26. int k;
  27. k = j-i+x;
  28. if (k >= 0 && k<8)
  29. ++board[x][k];
  30. k = j+i-x;
  31. if (k >= 0 && k<8)
  32. ++board[x][k];
  33. }
  34. board[i][j] = -1;
  35. }
  36. bool tryQ(int i)
  37. {
  38. bool result = false;
  39. for (int j = 0; j<8; ++j)
  40. {
  41. if (board[i][j] == 0)
  42. {
  43. setQ(i,j);
  44. if(i==7)
  45. result = true;
  46. else
  47. {
  48. if(!(result = tryQ(i+1)))
  49. resetQ(i,j);
  50. }
  51. }
  52. if(result)
  53. break;
  54. }
  55. return result;
  56. }
  57. int main()
  58. {
  59. for(int i=0; i<8; ++i)
  60. for(int j=0; j<8; ++j)
  61. board[i][j] = 0;
  62. tryQ(0);
  63. for(int i=0; i<8; ++i)
  64. {
  65. for(int j=0; j<8; ++j)
  66. {
  67. if (board[i][j] == -1)
  68. cout <<"[]";
  69. else
  70. cout <<". ";
  71. }
  72. cout << endl;
  73. }
  74. }

Решение задачи: «Переделать код на C#. 8 ферзей»

textual
Листинг программы
  1. Console.WriteLine("[]");
  2.                    
  3.                         Console.WriteLine(". ")

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы