0 / 0 / 0
Регистрация: 09.07.2019
Сообщений: 4
1

Есть задача. Не могу понять как выполнить сортировку, остальное вроде как работает

09.07.2019, 16:00. Показов 478. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задание: Ввести с клавиатуры целочисленную матрицу А размером NxN(N-четно). "Х" матриц записать в исходный файл. Считая матрицу составленной из К квадратов (подматриц) размером 2х2, преобразовать матрицу следующим образом. Для любых двух квадратов В и С должны выполняться следующие условия: если сумма элементов В меньше суммы элементов С, то квадрат В лежит либо выше, либо левее (когда В и С на одной горизонтали) квадрата С. В результирующий файл вынести исходные матрицы и полученные после перестановки.

Вот код:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
 
int main() {
    
    srand(time(NULL));
    
    FILE *f1;
    
    f1 = fopen("originalFile.txt", "w");
    
    int N = 0;
    int i = 0, j = 0, count = 0, countj = 0;
    int sum1 = 0, sum2 = 0;
    int kolvoPodmat = 0;
    
    printf("Введите размер квадртаной матрицы: ");
    scanf("%d", &N);
    
    int a[N][N], temp;
    
    if(N % 2 == 0){
        for(i = 0; i < N; i++){
            for(j = 0; j < N; j++){
                //scanf("%d", &a[i][j]);
                a[i][j] = rand() % 10;
            }
        }
        fprintf(f1, "Исходная матрица: \n");
        for(i = 0; i < N; i++){
            for(j = 0; j < N; j++){
                fprintf(f1, "%d  ", a[i][j]);
            }
            fprintf(f1, "\n");
        }
    }
    else{
        printf("Вы ввели нечетное число.\n");
        return 0;
    }
    
    kolvoPodmat = N*N/4;
    fprintf(f1, "\nКоличество подматриц 2x2: %d\n", kolvoPodmat);
    
    i = 0; j = 0;        
    
    while(i < N){ // Алгоритм вычисления сумм подматриц
        
        sum1 = a[i][j] + a[i][j+1] + a[i+1][j] + a[i+1][j+1];
        count++;
        countj += 2;
        fprintf(f1, "Сумма %d подматрицы: %d\n", count, sum1);
        
        sum2 = a[i][j+2] + a[i][j+3] + a[i+1][j+2] + a[i+1][j+3];
        count++;
        countj += 2;
        fprintf(f1, "Сумма %d подматрицы: %d\n", count, sum2);
        
        if(countj >= N){
            i += 2;
            countj = 0;
        }
    }
    
    fprintf(f1, "\nОтсортированная матрица: \n");
    for(i = 0; i < N; i++){
        for(j = 0; j < N; j++){
            fprintf(f1, "%d  ", a[i][j]);
        }
        fprintf(f1, "\n");
    }
    
    
    fclose(f1);
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.07.2019, 16:00
Ответы с готовыми решениями:

Выбор элемента по атрибуту data-number, код есть, не могу понять почему не работает как нужно!
Всем привет! Товарищи, помогите, столкнулся с проблемой. У меня есть map в котором лежат area, у...

Подскажите, не работает код, не могу понять почему - вроде бы все правильно
Доброго времени суток Есть задача - при клике на кнопку должен создаваться параграф в теле...

Журнал событий. Не могу понять как сделать сортировку по дате
Не знаю как найти все события из журнала безопасности Windows за последний месяц. С циклом беда,...

Задача по C#. Вроде все просто, а понять не могу. И если можно, дайте ссылки на похожие задачи
Создать приложение, которое получает на вход список школьных предметов и их характеристик, после...

1
0 / 0 / 0
Регистрация: 12.02.2019
Сообщений: 3
01.07.2020, 16:56 2
Дружище, если сделал сортировку, можешь сюда скинуть плиз ?
0
01.07.2020, 16:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.07.2020, 16:56
Помогаю со студенческими работами здесь

Есть код,но при запуске говорит неверный синтаксис,а я не могу понять где,вроде все верно
есть код,но при запуске говорит неверный синтаксис,а я не могу понять где,вроде все верно import...

Обход упорядоченного дерева. Не могу понять на что ругается прогорамма... Ошибок вроде как нет...
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;iomanip&gt; #include &lt;string&gt;...

Не могу понять как выполнить задание на ATmega
Добрый день, у меня есть задание написать программу что бы было прерывание и таймер, суть задания...

задача на сортировку массивов на языке c++, есть идеи как сделать?
Даны натуральные числа n, a1 ..., аn (п &gt;= 4). Числа a1 ..., аn — это измеренные в сотых долях...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru