б
Size: a a a
б
q
FS
D
q
D
C
q
int checkpos(int x, int y) {
int ret = 0;
if (mines_grid[x][y])
return 9;
for (int i = x - 1; i <= x + 1; i++) {
for (int k = y - 1; k <= y + 1; k++) {
if (mines_grid[i][k])
ret++;
}
}
return ret;
}
void showgrid() {
show_grid = new int* [size];
for (int i = 0; i < size; i++) {
show_grid[i] = new int[size];
}
for (int i = 0; i < size; i++) {
for (int k = 0; k < size; k++) {
show_grid[i][k] = 0;
}
}
for (int i = 0; i < size; i++) {
for (int k = 0; k < size; k++) {
show_grid[i][k] = checkpos(i, k);
}
}
}
DK
КМ
CS
DK
CS
CS
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <ctime>
#define clear system("cls");
#define press_key int i; cin >> i;
using namespace std;
int getrand(int min, int max){
static const double fraction = 1.0 / (static_cast<double>(RAND_MAX) + 1.0);
return static_cast<int>(rand() * fraction * (max - min + 1) + min);
}
class mines {
public:
int** show_grid;
bool** mines_grid;
int size;
mines(int s){
size = s;
}
void setgrid() {
mines_grid = new bool* [size];
for (int i = 0; i < size; i++) {
mines_grid[i] = new bool[size];
}
for (int i = 0; i < size; i++) {
for (int k = 0; k < size; k++) {
mines_grid[i][k] = 0;
}
}
int countmines = 0;
while (countmines <= 10) {
int x_pos = getrand(0, size - 1);
int y_pos = getrand(0, size - 1);
if (mines_grid[x_pos][y_pos] == 1)
continue;
mines_grid[x_pos][y_pos] = 1;
countmines++;
}
for (int i = 0; i < size; i++) {
for (int k = 0; k < size; k++) {
cout << setw(4) << mines_grid[i][k];
}
cout << endl << endl;
}
}
int checkpos(int x, int y) {
int ret = 0;
if (mines_grid[x][y])
return 9;
for (int i = x - 1; i <= x + 1; i++) {
for (int k = y - 1; k <= y + 1; k++) {
if (mines_grid[i][k])
ret++;
}
}
return ret;
}
void showgrid() {
show_grid = new int* [size];
for (int i = 0; i < size; i++) {
show_grid[i] = new int[size];
}
for (int i = 0; i < size; i++) {
for (int k = 0; k < size; k++) {
show_grid[i][k] = 0;
}
}
for (int i = 0; i < size; i++) {
for (int k = 0; k < size; k++) {
show_grid[i][k] = checkpos(i, k);
}
}
}
};
int main()
{
mines a(10);
a.setgrid();
press_key
clear
a.showgrid();
}
GG
ПК
FS
我
S
S