Вопрос задан 03.12.2023 в 05:32. Предмет Информатика. Спрашивает Беков Абдурахман.

C++ cin cout, int main() Даны два числа n и m. Создайте двумерный массив размера n×m и заполните

его символами «.» и «*», поставленными в шахматном порядке. В левом верхнем углу должна стоять точка.
0 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;

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для создания двумерного массива размера n × m и заполнения его символами "." и "*", можно использовать циклы и условные операторы. Вот пример кода на языке C++:

```cpp #include

int main() { int n, m; std::cout << "Введите количество строк (n): "; std::cin >> n; std::cout << "Введите количество столбцов (m): "; std::cin >> m;

char chessboard[n][m];

for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { if ((i + j) % 2 == 0) { chessboard[i][j] = '.'; } else { chessboard[i][j] = '*'; } } }

// Выводим полученный двумерный массив на экран for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { std::cout << chessboard[i][j] << " "; } std::cout << std::endl; }

return 0; } ```

В этом коде мы сначала объявляем переменные `n` и `m`, которые будут хранить количество строк и столбцов соответственно. Затем мы создаем двумерный массив `chessboard` размера `n × m`.

Затем мы используем два вложенных цикла `for` для заполнения массива символами "." и "*". Если сумма индексов строки и столбца является четным числом, то мы присваиваем элементу массива символ ".", в противном случае - символ "*".

После заполнения массива мы выводим его содержимое на экран, используя еще два цикла `for`.

Пример вывода для `n = 4` и `m = 6`: ``` . * . * . * * . * . * . . * . * . * * . * . * . ```

Надеюсь, это поможет! Если у вас возникнут еще вопросы, не стесняйтесь задавать.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос