Я создаю игру на линейном корабле в C ++, и мне трудно понять, как случайным образом разместить корабли 1x3 горизонтально на моей доске.Я взял доску 10х10, заполненную буквой «О» (для «океана»), и пытаюсь просто выяснить, как случайным образом разместить даже 1х1 «S» (для корабля).
#include <iostream>
#include <fstream>
using namespace std;
int main() {
const int rows=10;
const int cols=10;
srand(time(NULL));
char board[100];
ifstream fin;
fin.open("board.txt");
for (int i=0; i<rows*cols; i++) fin >> board[i];
fin.close();
for (int r=0;r<rows;r++) {
for (int c=0;c<cols;c++) {
cout << board[r*rows+c] << " ";
}
cout << endl;
}
}
Мой"board.txt" - это файл, содержащий доску 10x10.Я специально искал, как разместить на доске случайным образом только одну букву 'S', чтобы потом я сам мог понять, как разместить 'SSS' где-нибудь в массиве горизонтально.
Пожалуйста, имейте в виду, яЯ учусь в колледже на C ++, так что я все еще новичок в этом, так что без ненависти.