Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
0
Добавлен:
31.05.2025
Размер:
2.54 Кб
Скачать
#include <cstdio> 
#include  <cmath> // содержит математические функции
#include  <locale.h>

class vector // класс под названием vector
{
	
int *mas;// переменная которая без public по умолчанию закрытые(спец. приват)
int N; // переменная которая без public по умолчанию закрытые(спец. приватный)
public: // cпецификатор доступа 
	vector (int n); //  Конструктор 
    void input(); // функция с названием input, которая ничего не принимает и поэтому уберу в скобках void
	int Bignum();  //функция   
	int Litnum();	//функция   
	float MidlAnum();//функция   
	float MidlGnum();//функция   
	~vector(); // деструктор 
}; // конец объявление класса

// Два двоеточия называются оператором расширения видимости
		vector::vector (int n) //  конструктор в котором создаются объекты
	{
		N=n; 
		mas= new int[n]; //оператор new выделяет динамически память массиву int[n]
	}

	vector::~vector()      // деструктор (название такое же как и у класса)
	{
		delete(mas); //удаляются динамически созданные объекты 
	}
	
	void vector::input()   // функция в которой двоеточиями показываем, что в классе вектор описываем фунцию input 
	{
		printf("Введите элементы массива: \n");
			for (int i=0; i<N; i++)
				scanf("%d", &mas[i]);
	}
	
	int vector::Bignum()  //функция поиска наибольшего значени массива 
	{
		int max=0;
		max=mas[0];
	for (int i=1; i<N;i++)
	{
		if (mas[i]>max)
		{
			max=mas[i];
		}
	}
		return max;
	}

	int vector::Litnum() //функция поиска минимального значени массива 
	{
	  int minimal=0;
	  minimal=mas[0];
	  for (int i=1; i<N;i++)
	  {
	  	if(mas[i]<minimal)
	  	{
	  		minimal=mas[i];
		}
	  }
	  return minimal;
	
	}
	float vector::MidlAnum() //функция среднего арифмитического
	{
	 float def=0, midAr;
	 for (int i=0; i<N;i++)
	 {
	 	def=def+mas[i];
	 }
	 midAr=def/N;
	 return midAr;
	}
	float vector::MidlGnum() //функция среднего геометрического
	{
	 float proi=1,SredGm;
	  for (int i=0; i<N;i++)
	 {
	 	proi=proi*mas[i];
	 }
	 
	 SredGm=pow((proi),(1.0/N));
	 return SredGm;
	 
	}

int main(int argc, char** argv) 
{
	setlocale(LC_ALL, "rus"); 
	int n; // Переменная кол-ва
	printf("Введите количество чисел: \n");
	scanf("%d", &n);
	vector ob(n); // конструктор 
	ob.input(); //с переменной M (экземпляр) выполняет фуункцию
	printf("Максимум %d\nМинимум %d\nСреднее арифметическое %0.2f\nСреднее геометрическое %0.2f\n", ob.Bignum(),ob.Litnum(),ob.MidlAnum(),ob.MidlGnum());
	ob.~vector(); //дисктруктор 

}

Соседние файлы в папке 2 практика