Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Нужно написать программу для двухмерной матрици http://www.cyberforum.ru/cpp-beginners/thread716585.html
После ввода с клавиатуры размерности двухмерной матрицы целых чисел, а также введение элементов строками через пробел, вывести на экран отсортированные по убыванию минимальные элементы каждого столбца
C++ Неясность условия (Моделирование автомата) 1.1 Моделирование автомата Автоматом  называется некоторое устройство, которое математи-чески описывается тремя множествами X, Y, S и диаграммой D работы: X = {x1, x2, … , xn} – множество... http://www.cyberforum.ru/cpp-beginners/thread716583.html
Обмен значений 2 указателей в функции C++
Добрый вечер всем. Хочу при помощи функции менять адреса двух указателей. Вот код: #include <iostream> using namespace std; template <typename T> void swap1 (T *a, T *b) { T *temp_a = a;...
C++ Создать класс регион со следующими данными
Создать класс регион со следующими данными: название обл., Кол-во жителей, площадь, кол-во учебных заведений, кол-во промышленных предприятий. Создать метод для выполнения следующего действия:...
C++ Подсчёт количества символов и замена http://www.cyberforum.ru/cpp-beginners/thread716566.html
Подсчитать количество символов + стоящих между А и Б, заменить каждый символ 0 на ОО. Код написала, но в чём ошибка не понимаю:( компилятор ругается:( #include <stdio.h> #include <string.h>...
C++ Отсортировать и выдать на экран список После ввода с клавиатуры строками некоторых фамилий и рядом с ними возраста (год рождения) отсортировать и выдать на экран этот список, но отсортированными в порядке, обратном алфавитному, фамилиями подробнее

Показать сообщение отдельно
flatra
0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 356

Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик - C++

02.12.2012, 18:57. Просмотров 591. Ответов 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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <ctype.h>
#include "locale.h"
int rnd( int range_min, int range_max )
{
    return (double)rand() / (RAND_MAX + 1) * (range_max - range_min) + range_min;
}
 
int main()
{
    setlocale(LC_ALL, "Russian");
     int A[100][100];
     int M,               //количество строк
         N,               //количество столбцов
         m,
         k=0,
         i,j,
         K;          //количество нулевых столбцов
 
          printf("\n Vvedite kolichestvo strok M=: ");
          scanf("%d",&M);
          printf("\n Vvedite kolichestvo stolbcov N= : ");
          scanf("%d",&N);
     do{
 
printf("Заполнение массива: \n"
       " 1 - ввод с клавиатуры\n"
       " 2 - заполнение случайными числами\n"
       " Ваш выбор : ");
 
scanf("%d", &m);
 
switch(m){
 
    case 1: 
                 for(i=0; i<M; i++)
                 for(j=0; j<N; j++)
                 {
                   printf("Введите A[%d][%d]",i+1,j+1);
                   scanf("%d", &A[i][j]);
                 }
 
 
            break;
 
    case 2:
 
                 for(i=0; i<M; i++)
                 for(j=0; j<N; j++)
                 {
                   
                   A[i][j]=rnd(-10, 10 );
                 }
 
            break;
    default: printf("\nТакого действия нет"); break;
}
 
}while((m!=1)&&(m!=2));
 
 
    
 
for(i=0; i<M; i++)
{
    for(j=0; j<N; j++) printf("%5d ",A[i][j]);
    printf("\n");
}
          
          K=0;
               for (j=0; j<N; j++) 
          {
               int f=1;
               for (i=0; i<M; i++)
                    if (A[i][j] == 0)
                    { 
                         f=0; 
                         i=M; 
                    }
               if (f==1) 
               {
                    K++;
               }
               }
          printf("\n Kolichestvo nenulevyh stolbcov : %d",K);
     
          int s[10];
          for (i=0; i<M;i++)
          s[i]= 0;
                            
 
for (i=0; i<M; i++) 
{
for (j=0; j<N; j++) 
if (A[i][j]>0 && A[i][j]%2==0) s[i] += A[i][j];
}
printf ("\n");
for (i= 0; i<M; i++)
printf("s=%d ", s[i]);
int tmp, y;
for(i=0; i<m-1; i++)
{
    for(y=0; y<M-1-i; y++)
    {
        if(s[y]>s[y+1])
        {
            for(j=0; j<N; j++)
            {
                tmp=A[y][j]; A[y][j]=A[y+1][j]; A[y+1][j]=tmp;
            }
            tmp=s[y]; s[y]=s[y+1]; s[y+1]=tmp;
        }
    }
 
}
printf("\n");
printf("poluchen massiv \n");
for(i=0;i<m;i++)
{
    for (j=0;j<N;j++)
                printf("%d ",(A[i][j]));
    printf("\n");
}
 
getch();
return 0;
}
Добавлено через 34 секунды
должна быть сумма положительных четных

Добавлено через 13 минут
помогите пожалуйста срочно надо

Добавлено через 35 минут
помогите
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru