Вопрос задан 13.01.2020 в 01:02. Предмет Информатика. Спрашивает Харькина Ирина.

Вычислить среднее арифметическое положительных элементов матрицы, расположенных ниже побочной

диагонали. Задать двумерный массив размерности N*N (N вводится с клавиатуры) из целочисленных элементов, принадлежащих отрезку [-10;10]. Вычислить среднее арифметическое положительных элементов матрицы, расположенных ниже побочной диагонали. Вывести полученную матрицу в виде прямоугольной таблицы. Вывести указанные элементы. - С (СИ)
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Надь Миша.
#include <stdio.h>#include <stdlib.h>#include <conio.h>
/* main program fucntion */void main(){  int     iMatrSize, // size of the matrix    iSum = 0,  // sum of the nessesary elements of the matrix    iCnt = 0,  // number of the nessesary elements of the matrix    **aMatr;   // the matrix  int i, j;
  scanf_s("%i", &iMatrSize);
  /* allocation memory for the array */  aMatr = (int**)malloc(sizeof(int) * iMatrSize);  for (i = 0; i < iMatrSize; i++)  {    aMatr[i] = (int*)malloc(sizeof(int) * iMatrSize);  }
  /* filling in the array */  for (i = 0; i < iMatrSize; i++)    for (j = 0; j < iMatrSize; j++)      aMatr[i][j] = rand() % 21 - 10;
  /* counting the sum of the elements */  for (i = 0; i < iMatrSize; i++)    for (j = 0; j < iMatrSize - i - 1; j++)      iSum += aMatr[i][j], iCnt++;
  /* outputing the array */  for (i = 0; i < iMatrSize; i++)  {    for (j = 0; j < iMatrSize; j++)      printf ("%3i ", aMatr[i][j]);    printf("\n");  }
  printf("Sum = %f\n", (float)iSum / iCnt);
  _getch();} /* End of 'main' function */
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Задача:

Вычислить среднее арифметическое положительных элементов матрицы, расположенных ниже побочной диагонали. Задать двумерный массив размерности N*N (N вводится с клавиатуры) из целочисленных элементов, принадлежащих отрезку [-10;10]. Вывести полученную матрицу в виде прямоугольной таблицы. Вывести указанные элементы.

Решение:

Чтобы решить данную задачу, нам нужно выполнить следующие шаги:

1. Получить размерность матрицы N от пользователя. 2. Задать двумерный массив размерности N*N и заполнить его случайными целочисленными значениями из интервала [-10, 10]. 3. Вычислить среднее арифметическое положительных элементов матрицы, расположенных ниже побочной диагонали. 4. Вывести полученную матрицу в виде прямоугольной таблицы. 5. Вывести среднее арифметическое положительных элементов.

Давайте выполним эти шаги по порядку.

Шаг 1: Получение размерности матрицы

Нам нужно запросить у пользователя размерность матрицы N. Для этого мы можем использовать функцию `input()` для ввода значения с клавиатуры:

```python N = int(input("Введите размерность матрицы: ")) ```

Шаг 2: Заполнение матрицы случайными значениями

Для создания двумерного массива размерности N*N и заполнения его случайными целочисленными значениями из интервала [-10, 10], мы можем использовать модуль `random`:

```python import random

matrix = [[random.randint(-10, 10) for _ in range(N)] for _ in range(N)] ```

Шаг 3: Вычисление среднего арифметического положительных элементов

Мы должны найти все положительные элементы, расположенные ниже побочной диагонали матрицы, и вычислить их среднее арифметическое. Для этого мы можем использовать следующий код:

```python positive_elements = [] for i in range(N): for j in range(N): if i > j: element = matrix[i][j] if element > 0: positive_elements.append(element)

average = sum(positive_elements) / len(positive_elements) if positive_elements else 0 ```

Шаг 4: Вывод матрицы в виде прямоугольной таблицы

Для вывода матрицы в виде прямоугольной таблицы мы можем использовать циклы `for` и форматирование строк:

```python for row in matrix: print(' '.join([str(element) for element in row])) ```

Шаг 5: Вывод среднего арифметического положительных элементов

Мы можем просто вывести значение переменной `average`:

```python print("Среднее арифметическое положительных элементов:", average) ```

Вот полный код для решения данной задачи на языке Python:

```python import random

N = int(input("Введите размерность матрицы: "))

matrix = [[random.randint(-10, 10) for _ in range(N)] for _ in range(N)]

positive_elements = [] for i in range(N): for j in range(N): if i > j: element = matrix[i][j] if element > 0: positive_elements.append(element)

average = sum(positive_elements) / len(positive_elements) if positive_elements else 0

for row in matrix: print(' '.join([str(element) for element in row]))

print("Среднее арифметическое положительных элементов:", average) ```

Примечание: В приведенном коде мы использовали модуль `random` для генерации случайных чисел. Если вы хотите получать одинаковые результаты при каждом запуске программы, вы можете добавить следующую строку в начало программы:

```python random.seed(0) ```

Это связано с тем, что функция `random.randint()` генерирует случайные числа на основе некоторого начального значения, называемого "семенем" (seed). При использовании одного и того же семени, генератор случайных чисел будет генерировать одинаковую последовательность чисел.

0 0

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

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

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