Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- #define SIZE 5
- void fillMatrix(int matrix[SIZE][SIZE]) {
- for (int i = 0; i < SIZE; i++) {
- for (int j = 0; j < SIZE; j++) {
- matrix[i][j] = rand() % 100 + 1;
- }
- }
- }
- void printMatrix(int matrix[SIZE][SIZE]) {
- for (int i = 0; i < SIZE; i++) {
- for (int j = 0; j < SIZE; j++) {
- printf("%3d ", matrix[i][j]);
- }
- printf("\n");
- }
- }
- int rowSum(int matrix[SIZE][SIZE], int row) {
- int sum = 0;
- for (int j = 0; j < SIZE; j++) {
- sum += matrix[row][j];
- }
- return sum;
- }
- void sortRowsBySum(int matrix[SIZE][SIZE]) {
- for (int i = 0; i < SIZE - 1; i++) {
- for (int j = 0; j < SIZE - i - 1; j++) {
- if (rowSum(matrix, j) > rowSum(matrix, j + 1)) {
- for (int k = 0; k < SIZE; k++) {
- int temp = matrix[j][k];
- matrix[j][k] = matrix[j + 1][k];
- matrix[j + 1][k] = temp;
- }
- }
- }
- }
- }
- int main() {
- srand(time(NULL));
- int matrix[SIZE][SIZE];
- fillMatrix(matrix);
- printf("Исходная матрица:\n");
- printMatrix(matrix);
- printf("\nСуммы строк:\n");
- for (int i = 0; i < SIZE; i++) {
- printf("Сумма строки %d: %d\n", i + 1, rowSum(matrix, i));
- }
- sortRowsBySum(matrix);
- printf("\nМатрица после сортировки:\n");
- printMatrix(matrix);
- printf("\nСуммы строк после сортировки:\n");
- for (int i = 0; i < SIZE; i++) {
- printf("Сумма строки %d: %d\n", i + 1, rowSum(matrix, i));
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement