Информатика, вопрос задал Аноним , 1 год назад

Определить, сколько строк заданной матрицы U(N,M) содержат хотя бы один элемент из диапазона [A, B]. (Даю 100 баллов!. ЯЗЫК СИ!)

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

Ответил Koljisto
1

Ответ:

#include <stdio.h>

#include <stdbool.h>

#include <stdlib.h>

#include <time.h>

int main() {

   time_t t;

   /* Intializes random number generator */

   srand(time(NULL));

   int i, j, lines, columns, min, max, counter = 0;

   printf("Type the matrix lines=\t");

   scanf_s("%d", &lines);

   printf("Type the matrix columns=\t");

   scanf_s("%d", &columns);

   printf("Type minimum integer=\t");

   scanf_s("%d", &min);

   printf("Type maximum integer=\t");

   scanf_s("%d", &max);

// toggle manual or auto mode for fill matrix

   bool manual = false;

   int intMatrix[lines][columns];

   if(manual)

   {

       for (i = 0; i < lines; ++i)

       {

           for (j = 0; j < columns; ++j)

           {

               printf("Type a number for <line: %d, column: %d>\t", i+1, j+1);

               scanf("%d", &intMatrix[i][j]);

           }

       }

   }

   else

   {

       for (i = 0; i < lines; ++i)

       {

           for (j = 0; j < columns; ++j)

           {

               intMatrix[i][j]= rand() % 40;

           }

       }

   }

//    print matrix

   printf("Generated Matrix");

   for (i = 0; i < lines; ++i)

   {

       for (j = 0; j < columns; ++j)

       {

           printf("%d\t", intMatrix[i][j]);

       }

       printf("\n");

   }

   for (i = 0; i < lines; ++i)

   {

       for (j = 0; j < columns; ++j)

       {

           if(intMatrix[i][j] >= min && intMatrix[i][j] <= max)

           {

               counter++;

               break;

           }

       }

   }

   printf("%d lines have [%d, %d]", counter, min, max);

}
Вопросы в комментарии

https://pastebin.com/3mmFJXvn

Новые вопросы