Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
30
Добавлен:
27.04.2015
Размер:
1.86 Кб
Скачать
#include <iostream>
#include <string>
#include "class.h"
using namespace std;

unsigned int Prod::N = 6;

/* КОНСТРУКТОРЫ И ДЕСТРУКТОРЫ */

Prod::Prod(){
	name="";
	balance=0.0;
	tec = new float[N];
	for(unsigned int i=0;i<N;i++){
		tec[i]=0;
	}
}

Prod::Prod(string a){
	name=a;
	balance=0.0;
	tec = new float[N];
	for(unsigned int i=0;i<N;i++){
		tec[i]=0;
	}
}

Prod::Prod(string a1,double a2,float a3[6]){
	name=a1;
	balance=a2;
	tec = new float[N];
	for(unsigned int i=0;i<N;i++){
		tec[i]=a3[i];
	}
}

Prod::~Prod(){
	delete [] tec;
}

/* ПЕРЕГРУЗКА ОПЕРАЦИЙ */

bool operator >(Prod& a, Prod& b){
	if(a[2] > b[2]) return true;
	return false;
}

bool operator <(Prod& a, Prod& b){
	return b>a;
}

bool operator ==(Prod& a, Prod& b){
	return (a>b && a<b);
}

/* ПЕРЕГРУЗКА ПОТОКОВЫХ ОПЕРАЦИЙ */

ostream& operator <<(ostream& s,Prod& a){
	s<<"Название: "<<a.name<<endl
		<<"Баланс: "<<a.balance<<endl
		<<"ТЭП: "<<endl;
	for(unsigned int i=0;i<a.N;i++){
		s<<"\t"<<i<<": "<<a[i]<<endl;
	}
	return s;
}

istream& operator >>(istream& s,Prod& a){
	cout<<"Введите название предприятия:"<<endl;
	cin>>a.name;
	cout<<"Установите балансовую стоимость фондов "<<a.name<<":"<<endl;
	cin>>a.balance;
	cout<<"Введите основные ТЭП:"<<endl;
	for(unsigned i=0;i<a.N;i++){
		cout<<"ТЭП #"<<i<<endl;
		cin>>a[i];
	}
	return s;
}

/* ПЕРЕГРУЗКА ОПЕРАТОРОВ */

float& Prod::operator [](unsigned int a){
	if(a >= 0 && a < N){
		return *(tec+a);
	}
}

/* МЕТОДЫ КЛАССА */

unsigned int Prod::maxTEC(){
	unsigned int maxi = 0;
	float max=tec[0];
	for(unsigned int i=1;i<N;i++){
		if(tec[i] > max){maxi=i; max=tec[i];}
	}
	return maxi;
}

float Prod::TEC(unsigned int a){
	return tec[a];
}

string Prod::Name(){
	return name;
}

double Prod::Balance(){
	return balance;
}
Соседние файлы в папке Курсовая информатика 2013
  • #
    27.04.20151.86 Кб30class.cpp
  • #
    27.04.2015807 б31class.h
  • #
    27.04.2015604 б30main.cpp
  • #
    27.04.20154.15 Кб31Курсовая информатика 2013.vcxproj
  • #
    27.04.20151.3 Кб30Курсовая информатика 2013.vcxproj.filters