c++ cin cout, int main()
Даны два числа n и m. Создайте двумерный массив размера n×m и заполните его символами «.» и «*», поставленными в шахматном порядке. В левом верхнем углу должна стоять точка.
Ответы
Ответ дал:
0
Проверил, код работает!
Если будут вопросы - написать в комменты, отвечу.
P. S.
n - кол-во столбцов
m - кол-во строк.
#include <iostream>
#include <vector>
using namespace std;
int main(){
int n, m;
cin >> m >> n;
bool isDot = true, isA = !(n % 2) and !(m % 2) or n % 2 and !(m % 2);
vector<vector<char>> v(n, vector<char>(m));
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
if(isDot)
v[i][j] = '.';
else v[i][j] = '*';
isDot = isDot xor 1;
}
if(isA) isDot = isDot xor 1;
}
for(auto& i: v){
for(auto j: i)
cout << j << ' ';
cout << endl;
}
return 0;
}
Вас заинтересует
1 год назад
1 год назад
2 года назад
7 лет назад
8 лет назад