Другие предметы / 7 января 2022 в 7:00

C++ cin cout, int main()

Даны два числа n и m. Создайте двумерный массив размера n×m и заполните его символами «.» и «*», поставленными в шахматном порядке. В левом верхнем углу должна стоять точка.

Ответы и объяснения
Pozitivnay / 2022-01-07 07:00:06

Проверил, код работает!

Если будут вопросы - написать в комменты, отвечу.

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;

}

Добавить ответ


Мозг / Ответ
Сомневаешься в ответе? Смотреть другие ответы
УЗНАВАЙ БОЛЬШЕ НА школьникам!

У тебя проблема с домашними заданиями? Попроси о помощи!

  • 80% ответов приходят в течение 10 минут;
  • Мы не только ответим, но и объясним;
  • Качество гарантируется нашими экспертами.
Хочу завести аккаунт!

Что ты хочешь узнать?

Самые новые вопросы

Математика / 23 января 2022 в 20:28

У Нинико 18 лари. Она хочет на эти деньги купить

55 Просмотров
Русский язык / 23 января 2022 в 20:14

Диалог про басню помогите пожалуйста мне очень

55 Просмотров
Другие предметы / 23 января 2022 в 19:49

Отгодайте слово пожалуйста. В нём 17 букв. Срочно

46 Просмотров