Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.10.2015, 23:02   #1
SlavikKirov
Новичок
Джуниор
 
Регистрация: 12.05.2015
Сообщений: 1
По умолчанию Помогите в моем коде реализовать поиск минимального и максимального элемента функция minmax

Код:
#ifndef _LIBRARYMATRIX_H_
#define _LIBRARYMATRIX_H_
#include <iostream>
using namespace std;

template <typename T>
class matrix
{
	int *p_m;
	T n;
public:
	matrix(T count_n);
	matrix(const matrix & m);
	matrix operator+(const matrix my);
	matrix operator-(const matrix my);
	matrix operator*(const matrix my);
	matrix operator/(const matrix my);
	void operator=(const matrix my);
	void In_put();
	void Out_put();
	int get_n() const { return n; }
	void set(T *p_n1 = 0) { *p_n = *p_n1; }
	void MinMax(const matrix & s);
	~matrix();
};
template <typename T>
matrix <T> matrix<T>::operator+(const matrix my)
{
	int my_n = (n*n - n) / 2 + n;
	matrix m_ret(n);
	for (int i = 0;i<my_n;i++)
		m_ret.p_m[i] = p_m[i] + my.p_m[i];
	return m_ret;
};

template <typename T>
matrix<T> matrix<T>::operator-(const matrix my)
{
	int my_n = (n*n - n) / 2 + n;
	matrix m_ret(n);
	for (int i = 0;i<my_n;i++)
		m_ret.p_m[i] = p_m[i] - my.p_m[i];
	return m_ret;
};

template <typename T>
matrix<T> matrix<T>::operator/(const matrix my)
{
	T my_n = (n*n - n) / 2 + n;
	matrix m_ret(n);
	for (int i = 0;i<my_n;i++)
		m_ret.p_m[i] = p_m[i] / my.p_m[i];
	return m_ret;
};


template <typename T>
void matrix<T>::operator=(const matrix my)
{
	int my_n = (n*n - n) / 2 + n;
	for (int i = 0;i<my_n;i++)
		p_m[i] = my.p_m[i];
};

template <typename T>
matrix<T> matrix<T>::operator*(const matrix my)
{
	int my_n = (n*n - n) / 2 + n;
	matrix m_ret(n);
	for (int i = 0;i<my_n;i++)
		m_ret.p_m[i] = p_m[i] * my.p_m[i];
	return m_ret;
}


template <typename T>
matrix<T>::matrix(T count_n)
{
	n = count_n;
	int my_n = (n*n - n) / 2 + n;
	p_m = new int[my_n];
	for (int i = 0;i < my_n;i++)
		p_m[i] = rand() % 10;
};


template <typename T>
matrix<T>::matrix(const matrix & m)
{
	n = m.n;
	T my_n = (n*n - n) / 2 + n;
	p_m = new int[my_n];
	for (int i = 0;i<my_n;i++)
		p_m[i] = m.p_m[i];
};

template <typename T>
matrix<T>::~matrix()
{
};
template <typename T>
void matrix<T>::MinMax(const matrix & m)
{
	int min = m.p_m[0];
	for (int  i = 1; i < 20; i++)
		if (min > m.p_m[i])
		{
			int temp = m.p_m[i];
		    m.p_m[i] = min;
			min = temp;
		}
	cout << min;
}

template <typename T>
void matrix<T>::Out_put()
{
	int y = 0, out_ch = 0;
	for (int i = 0;i<n;i++)
	{
		for (int k = 0;k<y;k++)
		{
			cout.width(4);
			cout << "0";
		}
		for (int j = 0;j<n - y;j++)
		{
			cout.width(4);
			cout << p_m[out_ch];
			out_ch++;
		}
		cout << "\n";
		y++;
	}
};


template <typename T>
void matrix<T>::In_put()
{
	T y = 0;
	int in_ch = 0;
	for (int i = 0;i<n;i++)
	{
		for (int j = 0;j < n - y;j++)
		{
			cout << "[" << i << "," << j << "]: ";
			cin >> p_m[in_ch];
			in_ch++;
		}
		y++;
	}
};

#endif
SlavikKirov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi7.Поиск минимального и максимального элемента в массиве Tony Hudson Помощь студентам 4 05.03.2015 20:30
поиск минимального и максимального элемента apelsun Общие вопросы Delphi 3 10.11.2012 00:09
Поиск максимального (минимального) элемента массива в Delphi ICE1589 Помощь студентам 0 08.04.2011 13:32
Поиск минимального и максимального элемента в двухмерном массиве. Dem6 Общие вопросы Delphi 10 30.11.2009 20:22
Поиск минимального (максимального) элемента массива Radamant Помощь студентам 10 24.12.2008 17:44