Сгенерировать матрицу, содержащую целые числа от -10 до 10 размером NxM - C (СИ)
Формулировка задачи:
Также найти произведение и количество отрицательных чисел.
Решение задачи: «Сгенерировать матрицу, содержащую целые числа от -10 до 10 размером NxM»
textual
Листинг программы
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
int main()
{
const size_t N = 3, M = 3;
int result = 1;
size_t counter;
int A[N][M];
srand(time(NULL));
size_t i, j;
for(i = 0; i < N; ++i)
for(j = 0; j < M; ++j)
{
A[i][j] = rand() % 21 - 10;
if(A[i][j] < 0)
{
result *= A[i][j];
++counter;
}
}
}
Объяснение кода листинга программы
- Подключение необходимых библиотек: stdlib.h, printf.h, time.h
- Объявление переменных: N, M, result, counter, A[N][M]
- Инициализация генератора случайных чисел srand(time(NULL))
- Создание двух вложенных циклов для заполнения матрицы A[N][M] случайными числами от -10 до 10 с шагом 1
- Установка значения A[i][j] равным произвольному числу в диапазоне от -10 до 10 с шагом 1 с помощью функции rand() % 21 - 10
- Проверка на отрицательность числа A[i][j]
- Если число A[i][j] отрицательное, то умножение результата на это число и увеличение счетчика counter
- После завершения циклов, ничего не происходит
- В конце программы значение result равно 1, а переменная counter содержит количество отрицательных чисел в матрице
- Вывод значений переменных на экран не предусмотрен в данном коде