Вопрос задан 30.06.2023 в 11:36. Предмет Информатика. Спрашивает Кирилов Кирилл.

Составить программу в с++, которая вычисляет количество нулевых элементов, расположенных на главной

диагонали в двумерном массиве размерности 4х4. Заполнить массив целыми случайными числами из диапазона от 0 до 30.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Тирижан Естай.

Ответ:

#include <iostream>

#include <ctime>

using namespace std;

int main()

{

   srand(time(0));

   int quantity = 0;

   const int size = 4;

   int arr[size][size] = {};

   for (int i = 0; i < size; i++)

   {

       for (int j = 0; j < size; j++)

       {

           arr[i][j] = rand() % 31;

           cout << arr[i][j] << " ";

       }

       cout << endl;

   }

   for (int i = 0; i < size; i++)

   {

       if (arr[i][i] == 0)

       {

           quantity++;

       }

   }

   cout << quantity;

}

Объяснение:

Если пишете в codeblocks, то добавьте библиотеку stdlib.h

#include <iostream> // Библиотека ввода - вывода

#include <ctime> // Библиотека для работы со временем

using namespace std; // Пространство имён

int main()

{

   srand(time(0)); // Обнуляем время (каждый раз новые числа в массиве)

   int quantity = 0; // Создание целочисленной переменной, хранящей количество нулевых элементов, расположенных на главной диагонали

   const int size = 4; // Константная целочисленная переменная, хранящая в себе размер квадратной матрицы

   int arr[size][size] = {}; // Создание целочисленной квадратной матрицы, заполненной нулями

   for (int i = 0; i < size; i++) // Идём по массиву

   {

       for (int j = 0; j < size; j++) // Идём по массиву

       {

           arr[i][j] = rand() % 31; // Заполнения массива числами диапазона [0, 30]

           cout << arr[i][j] << " "; // Вывод значений

       }

       cout << endl; // Перевод на следующую строку

   }

   for (int i = 0; i < size; i++) // Так как нам нужна только главная диагональ, а индексы этих элементов равны, то используем только один цикл

   {

       if (arr[i][i] == 0) // Если элемент главной диагонали = 0

       {

           quantity++;  // Количество + 1

       }

   }

   cout << quantity; // Вывод ответа

}

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

Для выполнения этой задачи вам потребуется использовать двумерный массив размерности 4x4, заполнить его случайными числами и затем посчитать количество нулевых элементов на главной диагонали. Вот пример программы на C++:

cpp
#include <iostream> #include <ctime> #include <cstdlib> int main() { // Устанавливаем зерно для генератора случайных чисел на основе времени std::srand(static_cast<unsigned int>(std::time(nullptr))); // Создаем двумерный массив размерности 4x4 и заполняем его случайными числами int array[4][4]; for (int i = 0; i < 4; ++i) { for (int j = 0; j < 4; ++j) { array[i][j] = std::rand() % 31; // случайное число от 0 до 30 } } // Выводим массив на экран std::cout << "Сгенерированный массив:" << std::endl; for (int i = 0; i < 4; ++i) { for (int j = 0; j < 4; ++j) { std::cout << array[i][j] << '\t'; } std::cout << std::endl; } // Считаем количество нулевых элементов на главной диагонали int countZeros = 0; for (int i = 0; i < 4; ++i) { if (array[i][i] == 0) { countZeros++; } } // Выводим результат std::cout << "Количество нулевых элементов на главной диагонали: " << countZeros << std::endl; return 0; }

Этот код создает массив, заполняет его случайными числами в диапазоне от 0 до 30, выводит массив на экран и затем подсчитывает количество нулевых элементов на главной диагонали.

0 0

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

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

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

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