Дано матрицю А(2,3). Знайти максимальний і мінімальний елементи та створити функції для пошуку кожного з них. Уведення та виведення матриці виконати за допомогою функцій.
Розв’язання.
Таблиця символічних імен основної програми
Математичне ім’я
Ім’я
у програмі
Смисловое значення
Змінна
Тип
Значення
mat
mat
Матриця [N][M]
int
Уводиться
mx
mx
Максимальний
елемент матриці
int
З’ясовується
у процесі
mn
mn
Мінімальний
елемент матриці
int
З’ясовується
у процесі
N
N
Кількість стовпців
int
M
M
Кількість рядків
int
Таблиця символічних імен для функції PoiskMaxMin
Математичне ім’я
Ім’я
у програмі
Смислове значення
Змінна
Тип
Значення
x
x
Матриця із [n][m] елементів
int
Параметр
функції
n
n
Кількість стовпців
у матриці
int
Параметр
функції
m
m
Кількість рядків
у матриці
int
Параметр
функції
i
i
Параметр циклу
int
Змінне
значення
j
j
Параметр циклу
int
Змінне
значення
*max
*max
Максимальний
елемент матриці
int
З’ясовується у функції
*min
*min
Мінімальний
елемент матриці
int
З’ясовується у функції
Текст програми мовою С++
для компіляторів Vusual C++
#include <iostream.h>
const int N = 2, M = 3;
// функція вводу масиву
void Input(int x[N][M], int n, int m, char *name)
{
for ( int i = 0; i < n; i++)
{
for ( int j = 0; j < m; j++ )
{
cout <<"Уведіть"<<name<<"["<<i<<"]["<<j<<"]";
cin >> x[ i ][ j ];
}
}
}
// функція виводу масиву
void Output( int x[N][M], int n, int m, char *name )
{
for ( int i = 0; i < n ; i++ )
{
for ( int j = 0; j < m; j++ )
{
cout << x[ i ][ j ] << '\t';
}
cout << endl;
}
}
// функція пошуку максимального та мінімального елементів
void PoiskMaxMin( int x[N][M], int n, int m, int *max, int *min )
{
*max = x[0][0];
*min = x[0][0];
for ( int i = 0; i < n; i++ )
{
for ( int j = 0; j < m; j++ )
{
if ( *max < x[ i ][ j ] ) *max = x[ i ][ j ];
if ( *min > x[ i ][ j ] ) *min = x[ i ][ j ];
}
}
}
int main() // головна функція
{
int mat[ N ][ M ];
int mx,mn;
Input(mat,N,M,"mat"); // виклик функції вводу масиву
cout << endl << endl;
Output(mat,N,M,"mat");// виклик функції виводу масиву
cout << endl << endl;
PoiskMaxMin( mat,N, M, &mx, &mn ); // виклик функції пошуку