Вопрос задан 07.04.2021 в 22:48. Предмет Информатика. Спрашивает Синицкая Катерина.

дана целочисленная матрица размерами M*N найти количество ее строк все элементы которых различны

(надо на языке программирования C (си) )
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Бурнасов Сергей.
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>

int main(void) {
           int n, m;
           scanf("%d %d", &n, &m);
           int matrix[n][m];
           for (int i = 0; i < n; i++) {
                      for (int j = 0; j < m; j++) {
                                 scanf("%d", &matrix[i][j]);
                      }
           }
           int ans = 0;
           for (int i = 0; i < n; i++) {
                      bool tmp = false;
                      for (int j = 0; j < m && tmp == false; j++) {
                                 for (int k = j + 1; k < m && tmp == false; k++) {
                                            if (matrix[i][j] == matrix[i][k]) {
                                                       tmp = true;
                                            }
                                 }
                      }
                      if (tmp == false) {
                                 ans++;
                      }
           }
           printf("%d", ans);
           return 0;
}
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Вот пример программы на языке программирования C, которая находит количество строк в целочисленной матрице, в которых все элементы различны:

c
#include <stdio.h> int areElementsDistinct(int* row, int size) { for (int i = 0; i < size - 1; i++) { for (int j = i + 1; j < size; j++) { if (row[i] == row[j]) { return 0; // Найдены повторяющиеся элементы } } } return 1; // Все элементы различны } int countDistinctRows(int** matrix, int rows, int cols) { int count = 0; for (int i = 0; i < rows; i++) { if (areElementsDistinct(matrix[i], cols)) { count++; } } return count; } int main() { int rows, cols; printf("Введите количество строк и столбцов матрицы: "); scanf("%d %d", &rows, &cols); // Выделение памяти под матрицу int** matrix = (int**)malloc(rows * sizeof(int*)); for (int i = 0; i < rows; i++) { matrix[i] = (int*)malloc(cols * sizeof(int)); } // Ввод элементов матрицы printf("Введите элементы матрицы:\n"); for (int i = 0; i < rows; i++) { for (int j = 0; j < cols; j++) { scanf("%d", &matrix[i][j]); } } // Подсчет количества строк с различными элементами int distinctRows = countDistinctRows(matrix, rows, cols); printf("Количество строк с различными элементами: %d\n", distinctRows); // Освобождение памяти for (int i = 0; i < rows; i++) { free(matrix[i]); } free(matrix); return 0; }

Программа сначала запрашивает у пользователя количество строк и столбцов матрицы. Затем пользователю предлагается ввести элементы матрицы по одному. После ввода всех элементов программа подсчитывает количество строк, в которых все элементы различны, и выводит это значение на экран.

0 0

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

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

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