Если что-то непонятно или не работает - спрашивайте.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define M 4
#define N 4
int main()
{
int A[M][N]; // произвольная матрица
int i, j, indx = -1;
// Автоматически заполняем матрицу ,
// находим индекс второго отрицательного элемента ,
// выводим матрицу на экран
srand((unsigned)time(NULL));
printf("Matrix: \n");
for (i = 0; i < M; i++)
{
for (j = 0; j < N; j++)
{
A[i][j] = (rand() % 201) - 100;
printf("%5d ", A[i][j]);
if ((A[i][j] < 0)&&(indx<0))
{
indx--;
if (indx == -3) indx = i * M + j;
}
}
printf("\n");
}
// Сортировка по убыванию элементов, расположенных
// после второго отрицательного числа
for (i = indx + 1; i < M * N - 1; i++)
{
indx = i;
for (j = i+1; j < M * N; j++)
if (A[0][j] > A[0][indx]) indx = j;
j = A[0][i];
A[0][i] = A[0][indx];
A[0][indx] = j;
}
// Вывод результата
printf("\nSort matrix: \n");
for (i = 0; i < M; i++)
{
for (j = 0; j < N; j++)
printf("%5d ", A[i][j]);
printf("\n");
}
return 0;
}
Поделитесь своими знаниями, ответьте на вопрос:
Сор по информатике за раздел как разрабатываются компьютерные игры 1 вариант
(очень)грубая оценка для 100 мегабитного проводного ethernet примерно так: 100 МБит/с это примерно 10 МБайт/с (соотношение 10, хотя в байте бит по прежнему 8, это из-за всякие типовых накладных расходов, расхождения единиц измерения). 500 МБайт / 10 МБайт/с = 50 секунд.
Если чистая арифметика и пофиг на жизнь, то 500 Мбайт = (500 * 1024 * 1024) байт = (50 * 1024 * 1024 * 8) бит
Все это поделить на 100 000 000 бит/с и получится время в секундах. То есть 41,94304 секунд