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

class vector
{
int *mas;
int N;
public: 
	vector (int n); 
    void input(); 
    void give(int b); 
	int Bignum();  
	int Litnum();	 
	float MidlAnum();
	float MidlGnum(); 
	int Poisk_krat(); 
	~vector(); 
}; 
		vector::vector (int n) 
	{
		N=n; 
		mas= new int[n]; 
	}
	vector::~vector()      
	{
		delete(mas); 
	}	
	void vector::input()    
	{
		printf("Введите элементы массива: \n");
			for (int i=0; i<N; i++)
				scanf("%d", &mas[i]);
	}
	void vector::give(int b)
	{
		if((b)==(1))
		{
		printf("Массив A: ");	
		}
		else
		{
		 printf("Массив B: ");	
		}
		for (int i=0;i<N;i++)
		{		
		printf("%d\t",  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::Poisk_krat()
	{
		int t=0;
		for(int i=0;i<N;i++)
		{
			if (((mas[i])%3)==(0))
			{
			 t=t+1;
			}
		
		}
		return t;
	}
	
	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(); 
	printf("Максимум %d\nМинимум %d\nСреднее арифметическое %0.2f\nСреднее геометрическое %0.2f\n", ob.Bignum(),ob.Litnum(),ob.MidlAnum(),ob.MidlGnum());
	ob.~vector(); 
	vector A(5);
	vector B(5);
	A.input();
	B.input();
	int b=0;
	if ((A.Poisk_krat())==(B.Poisk_krat()))
	{
	printf("Количество кратных чисел трем равно или их нет\n");	
	A.~vector();
	B.~vector();	
	}
	else
  {
	if ((A.Poisk_krat())>(B.Poisk_krat()))
	{
		b=1;
		A.give(b);
		b=0;
		B.give(b);
		A.~vector();
		B.~vector();
	}
	else
	{
		B.give(b);
		b=1;
		A.give(b);
		B.~vector();
		A.~vector();
	}
  } 
}

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