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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.09.2010, 13:13   #1
Chel
Пользователь
 
Регистрация: 21.05.2008
Сообщений: 22
По умолчанию Задачи о классах и конструкторах в Microsoft Visual С++

Всем добрый день
народ, есть задачи, которые надо решить Microsoft Visual С++.
решение 1.
Код:
/*
Написать программу, в которой предусмотреть класс для организации 
обработки целочисленного массива. 
Внутри класса реализовать два конструктора: 
	1-й конструктор должен обеспечивать ввод элементов массива с клавиатуры; 
	2-й конструктор должен формировать значения элементов массива в задаваемом диапазоне [min, max] 
		c помощью генератора случайных значений. 
Внутри класса предусмотреть 5 методов: 
	1-й метод должен вычислять значение максимального элемента в массиве; 
	2-й метод должен вычислять значение минимального элемента; 
	3-й метод должен обеспечивать вывод массива на экран. 
	Еще 2 метода спроектировать самостоятельно и реализовать.
*/

#include "stdafx.h"
#include "iostream"
#include "conio.h"

using namespace std;

class mass 
{  
   public: mass(int, int);  // прототип явного констр класса mass для выода елементов массива рандомом
		   ~mass();	// прототип явного дестр класса mass
   private: 	
int m[15];

}; 

// Определение явного конструктора
mass::mass(int *m, int size)
{ 	int mx = 9, mn = 1;

	for(int i = 1; i <= size; i++) 
	{					
		m[i] = rand()%(mx-mn+1)+mn;
	//	cout << "\nVvedite m["<<i<<"] element"; 	
	//	cin >> m[i];
	}
	
} 
// метод 1 min
void avto::min_avto(int *m, int size)
{	
	int mx = 9, mn = 1;
	int min;
	for(int i = 1; i <= size; i++) 
	{					
		m[i] = rand()%(mx-mn+1)+mn;
	}

	for(int i = 1; i <= size; i++)
	{	
		min=m[1];
		if (m[i]<=min) min=m[i];
	}
	cout<<"Minimal'niy element = "<<min;
}

// метод 2 max
void avto::max_avto(int *m, int size)
{	
	int mx = 9, mn = 1;
	int min;
	for(int i = 1; i <= size; i++) 
	{					
		m[i] = rand()%(mx-mn+1)+mn;
	}

	for(int i = 1; i <= size; i++)
	{	
		max=m[1];
		if (m[i]>=max) max=m[i];
	}
	cout<<"Maximal'niy element = "<<max;
}
// вывод элементов массива
void mass::output_mass(int *m, int size)
{	cout<<"===Vyvod=massiva===";
	for(int i = 1; i <= size; i++) 
	{					
		cout<<"Vyvod. m["<<i<<"element= "<<m[i];
	}
}


int main()
{	int size;
	mass A1; // вызываются неявный, а затем явный конструкторы 
	cout<<"Enter size: ";
	cin>>size;
	int *matrix = new int [size];
	cout<<endl;
	
	A1.min_mass();	// вызывается функция-член поиска min
	A1.max_mass();	// вызыв функция-член поиска max
	A1.output_mass();	// вызывается функция-член поиска max	
	
	getch();
	return 0;

}
решение 2
Код:
/*
Написать программу, в которой предусмотреть класс для организации 
обработки целочисленного массива. 
Внутри класса реализовать два конструктора: 
	1-й конструктор должен обеспечивать ввод элементов массива с клавиатуры; 
	2-й конструктор должен формировать значения элементов массива в задаваемом диапазоне [min, max] 
		c помощью генератора случайных значений. 
Внутри класса предусмотреть 5 методов: 
	1-й метод должен вычислять значение максимального элемента в массиве; 
	2-й метод должен вычислять значение минимального элемента; 
	3-й метод должен обеспечивать вывод массива на экран. 
	Еще 2 метода спроектировать самостоятельно и реализовать.
*/

#include "stdafx.h"
#include "iostream"
#include "conio.h"


using namespace std;

class mass 
{  
   public: mass(int, int);  // прототип явного конструктора класса mass для ыыода елементов массива рандомом
		 //  ~mass();	// прототип явного деструктора класса mass
   private: 	
			int m[10];

}; 

// Определение явного конструктора
mass::mass(int *m, int size)
{ 	int mx = 9, mn = 1;

	for(int i = 1; i <= size; i++) 
	{					
		m[i] = rand()%(mx-mn+1)+mn;
	//	cout << "\nVvedite m["<<i<<"] element"; 	
	//	cin >> m[i];
	}
	
} 
// метод 1 min
void mass::min_mass(int *m, int size)
{	
	int mx = 9, mn = 1;
	int min;
	for(int i = 1; i <= size; i++) 
	{					
		m[i] = rand()%(mx-mn+1)+mn;
	}

	for(int i = 1; i <= size; i++)
	{	
		min=m[1];
		if (m[i]<=min) min=m[i];
	}
	cout<<"Minimal'niy element = "<<min;
}

// метод 2 max
void avto::max_avto(int *m, int size)
{	
	int mx = 9, mn = 1;
	int min;
	for(int i = 1; i <= size; i++) 
	{					
		m[i] = rand()%(mx-mn+1)+mn;
	}

	for(int i = 1; i <= size; i++)
	{	
		max=m[1];
		if (m[i]>=max) max=m[i];
	}
	cout<<"Maximal'niy element = "<<max;
}
// вывод элементов массива
void mass::output_mass()
{	cout<<"===Vyvod=massiva===";
	for(int i = 1; i <= size; i++) 
	{					
		cout<<"Vyvod. m["<<i<<"element= "<<m[i];
	}
}


int main()
{	int size;
	mass A1; // вызываются неявный, а затем явный конструкторы 
	cout<<"Enter size: ";
	cin>>size;
	A1.mass(m, size);
	A1.min_mass(m, size);	// вызывается функция-член поиска min
	A1.max_mass(m, size);	// вызывается функция-член поиска max
	A1.output_mass();	// вызывается функция-член поиска max	
	
	getch();
	return 0;

}
Всем заранее спасибо!

Последний раз редактировалось Chel; 19.09.2010 в 13:23.
Chel вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Visual C++, Visual C#, Visual basic .Net, или Microsoft.Net Что лучше? _PROGRAMM_ Общие вопросы .NET 14 10.10.2012 19:24
Microsoft Visual c++ 6.0 VintProg Софт 3 03.11.2009 05:19
Вопрос по Microsoft Visual C++ DiZZZ Visual C++ 3 06.04.2009 18:45
Microsoft Visual C++ 6.0 saleens7 Помощь студентам 6 26.12.2008 16:16
Visual J# from Microsoft Visual Studio .NET Flash_ Общие вопросы по Java, Java SE, Kotlin 2 28.12.2006 10:16