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

Поменять местами строки сумма элементов которых больше суммы элементов в строках массива

09.04.2018, 00:22. Показов 720. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано два массива
Найти строки Первого массива , сумма элементов которых больше суммы элементов в строках Второго массива.
И нужно эти строки поменять местами.
Вот программа как менять местами не знаю.Помогите

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
#include <stdio.h>
#include <time.h>
void main()
{
 
    
    int const n = 3;
    int const m = 5;
    int const k = 3;
 
    
    int LL[n][m];
    int PER[k][m];
    int i,j,s1,summstr,s2,summstr2; //sumstr-сумма в строке 
 
    
    srand(time(NULL));
    printf ("Ishodnuy masuv LL\n");
        for ( i = 0; i < n; i++)         
        {
            for ( j = 0; j < m; j++)  
            {
                LL[i][j] = rand() % 10 + 1; 
                printf ("%3d ",LL[i][j]);   
            }
            printf  ("\n");
            }
            for (i=0;i<n;i++)
            {
                s1=0;
                for (j=0;j<m;j++)
                    s1+=LL[i][j];
                    summstr=i;
                    printf ("%d ",summstr);
                printf ("%d ",s1);
            }
                printf  ("\n");                  
 
        printf ("\n\n");
        printf ("Ishodnuy PER\n");
        for ( i = 0; i < k; i++)
        {
            for ( j = 0; j < m; j++)
            {
                PER[i][j] = rand() % 10 + 1;
                printf ("%3d ",PER[i][j]);
            }
            printf ("\n");
        }
         for (i=0;i<n;i++)
            {
                s2=0;
                for (j=0;j<m;j++)
                    s2+=PER[i][j];
                    summstr2=i;
                    printf ("%d ",summstr2);
                printf ("%d ",s2);
            }
                printf  ("\n");
 
        printf ("\n\n");
}
Добавлено через 49 минут

Добавлено через 11 минут
Тут меняю местами,может не правильно,тоисть надо поменять,строки двух массивов,где в Первому сумма элементов больше чем в Втором массиве.Если в 1 строке Первого массива сумма элементов 30,а в Втором массиве в 1 строке сумма 20 то надо поменять местами.
Когда пишу уловие перед сортировкой,мне ничего не меняет




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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#include <stdio.h>
#include <time.h>
void main()
{
 
 
    int const n = 3;
    int const m = 5;
    int const k = 3;
 
 
    int LL[n][m];
    int PER[k][m];
    int i,j,s1,summstr,s2,summstr2,max1,max_num1,max2,max_num2,tmp; //sumstr-сумма в строке
 
 
    srand(time(NULL));
    printf ("Ishodnuy masuv LL\n");
        for ( i = 0; i < n; i++)
        {
            for ( j = 0; j < m; j++)
            {
                LL[i][j] = rand() % 10 + 2;
                printf ("%3d ",LL[i][j]);
            }
            printf  ("\n");
            }
 
 
            for (i=0;i<n;i++)
            {
                s1=0;
                max1=0;
                for (j=0;j<m;j++)
                    s1+=LL[i][j];
                    summstr=i;
                    if (s1>max1)
                    {
                        max1=s1;
                        max_num1=i;
 
                    }
                    printf ("%d ",summstr);
                printf ("%d ",s1);
                printf ("\n");
                 printf ("Maxumalne 4uclu %i =%d ",max1,max_num1);
                    printf ("\n");
            }
                printf  ("\n");
 
        printf ("\n\n");
        printf ("Ishodnuy PER\n");
        for ( i = 0; i < k; i++)
        {
            for ( j = 0; j < m; j++)
            {
                PER[i][j] = rand() % 10 + 1;
                printf ("%3d ",PER[i][j]);
            }
            printf ("\n");
        }
         for (i=0;i<n;i++)
            {
                s2=0;
                max2=0;
                max_num2=0;
                for (j=0;j<m;j++)
                    s2+=PER[i][j];
                    summstr2=i;
                    if (s2>max2)
                    {
                        max2=s2;
                        max_num2=i;
 
                    }
                    printf ("%d ",summstr2);
                printf ("%d ",s2);
                printf ("\n");
                 printf ("Maxumalne 4uclu %i =%d ",max2,max_num2);
                 printf("\n");
            }
                printf  ("\n");
 
        printf ("\n\n");
        for (j=0;j<m;j++)
        {
        tmp=LL[max_num1][j];
        LL[max_num1][j]=PER[max_num2][j];
        PER[max_num2][j]=tmp;
        }
        printf ("Novui masuv\n");
        for (i=0; i<n; i++) {
        for (j=0; j<m; j++) {
            printf("%3d ", LL[i][j]);
        }
        printf("\n");
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.04.2018, 00:22
Ответы с готовыми решениями:

Найдите строки массива А (N), сумма элементов которых больше суммы элементов в строках массива В (M)
Дано два масива А(N) и В(M). 1)Найдите строки массива А (N), сумма элементов которых больше суммы...

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

В двумерном массиве A[N][M] поменять местами строки,в которых сумма элементов максимальна и минимальна.
Помогите пожалуйста..

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

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.04.2018, 00:22
Помогаю со студенческими работами здесь

В каждой строке матрицы найти элементы, для которых сумма предшествующих элементов больше суммы последующих элементов
Проверьте пожалуйста код программы относительно условия задачи В каждой строке матрицы D(n, n),...

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

В строках, где сумма элементов положительное число, максимальный и минимальный элементы поменять местами
Дана матрица A(n,k). В строках, где сумма элементов положительное число, макс. и мин. элементы...

Определить количество элементов массива, значения которых больше СУММЫ соседних элементов
Дан одномерный массив из 15 элементов. Определить количество элементов, значения которых больше...


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

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

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