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

Дана целочисленная прямоугольная матрица - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как передать (или присвоить) имя в поле класса из main? http://www.cyberforum.ru/cpp-beginners/thread1750340.html
Листинг: #include <iostream> #include <string> using namespace std; class Myname { string name; int old; Myname(string x, int y): name(x), old(y){} };
C++ Я написал программу шифрования и дешифрования,но много ошибок, исправьте пожалуйста Вот код который я написал, но там много ошибок, помогите исправить, или посоветуйте что нужно сделать/ #include "stdafx.h" #include "locale.h" #include "stdio.h" #include "stdlib.h" #include... http://www.cyberforum.ru/cpp-beginners/thread1750339.html
C++ Из однонаправленного списка удалить четные элементы
Ребят помогите вообще не понимаю списки, сегодня экзамен, вот условие Из однонаправленного списка удалить четные элементы.
Замена гласных букв на символ * C++
Здравствуйте, нужно написать программу которая заменяет все гласные буквы в предложении на символ "*". Помогите пожалуйста!
C++ Реализовать класс "Прямоугольная матрица" http://www.cyberforum.ru/cpp-beginners/thread1750291.html
Помогите, пожалуйста. Составить описание класса для объектов прямоугольных матриц, задаваемых массивом вещественных чисел типа double, располагающегося в памяти по строкам. Компоненты матрицы должны...
C++ Написать программу, которая запрашивает у пользователя его имя, фамилию и отчество, и выводит поздравления Написать программу, которая запрашивает у пользователя его имя, фамилию и отчество, и выводит поздравления с фамилией и инициалами. Написать программу, которая выводит текстовое меню для обработки... подробнее

Показать сообщение отдельно
marat_miaki
108 / 97 / 37
Регистрация: 08.04.2013
Сообщений: 348
31.05.2016, 16:27
Вроде так, если нет подправишь, лишнее можно тоже убрать
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
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
#include <iostream>
#include <clocale>
#include <cstdlib>
#include <iomanip>
 
using namespace std;
//----- объявление прототипов используемых функций-----------------
int** Create(int n,int m);           // создание матрицы n строк m столбцов
void Free(int** M,int n);             // освобождение матрицы
void Input(int** M,int n,int m);   // ввод матрицы вручную
void InputRand(int** M,int n,int m);  // ввод рандомно
void Print(int** M,int n,int m);     // вывод матрицы
//--------------------------------------------------------------------------
//void Work(int** M,int n,int m);    // обработка матрицы
int Work(int** M,int n,int m);    // обработка матрицы - сумма строки
bool OtrYN(int** M,int n,int m);    // обработка матрицы - есть ли отриц элемент
int MinMass(int** M,int n,int m);    // мин столбца массива
int MaxMass(int** M,int n,int m);    // максим. строки массива
 //--------------------------------------------------------------------------
 
//----------  main() -  точка входа в программу консольного приложения 
int main()
{
    setlocale(LC_ALL,"Rus");
    int n,m;
    cout<<"Количество строк матрицы:?";
    cin>>n;
    cout<<"Количество столбцов матрицы:?";
    cin>>m;
    int** A=Create(n,m);
    //Input(A,n,m);
    InputRand(A,n,m);
    Print(A,n,m);
    
    for (int i = 0; i < n; ++i) {
    if (OtrYN(A,i,m)) {
    
    cout << "Сумма строки где есть хоть 1 отр. элемент "<< i+1 <<" "<< (Work(A,i,m)) << endl;
    } //if
    }//for
    
    for (int i = 0; i < n; ++i) {
       cout << "Максимум строки "<< i+1 <<" "<< (MaxMass(A,i,m)) << endl;
    }//for
    for (int j = 0; j < m; ++j) {
        cout << "Минимум столбца "<< j+1 <<" "<< (MinMass(A,n,j)) << endl;
    }//for
    
    // дловая точка матрицы
    for (int i = 0; i < n; ++i) {
    for (int j = 0; j < m; ++j) {
       if ( (MinMass(A,n,j))==(MaxMass(A,i,m))) {
       cout << " Седловая точка " << "i- " << i <<" j- "<< j << endl;}
    }//for
    }
 
    cout << endl;
    //Print(A,n,m);
    Free(A,n);
    system("pause");
    return 0;
}
 
//----   описание функций -----------------------------------------
int** Create(int n,int m)
{
    int** M=new int*[n];
    for(int i=0;i<n;i++)
    {
        M[i]=new int[m];
    }
    return M;
}
//----------------------------
void Free(int** M,int n)
{
    for(int i=0;i<n;i++)
        delete[] M[i];
    delete[] M;
}
//----------------------------
void Input(int** M,int n,int m)
{
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)
        {
            cout<<"M["<<i<<"]["<<j<<"]=?";
            cin >> M[i][j];
        }
    
    }
}
//----------------------------
void InputRand(int** M,int n,int m)
{
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)
        {
            M[i][j]=rand()%10;
        }
    
    }
}
//----------------------------
void Print(int** M,int n,int m)
{
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)
        {
            cout << setw(4) << M[i][j] ;
        }
        cout << endl;
    }
    cout << endl;
}
 
// Сумма строки массива  
int Work(int** M,int n,int m)
{
 int summ=0;
   for (int i=0; i < m; ++i)
        summ+=M[n][i];
 return summ;
}
// Есть ли отр элемент в строке 
bool OtrYN(int** M,int n,int m)
{
    for (int i=0; i < m; ++i)
        if (M[n][i]<0) return 1;
 return 0;
}
 
// Минимум столбца массива  
int MinMass(int** M,int n,int m)
{
 int min=M[0][m];
   for (int i=1; i < n; ++i)
        if (min > M[i][m]) min = M[i][m];
 return min;
}
// Максимум строки массива  
int MaxMass(int** M,int n,int m)
{
 int max=M[n][0];
   for (int i=1; i < m; ++i)
        if (max < M[n][i]) max = M[n][i];
 return max;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru