ccc

Kolorwanie:
Status:
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
#include <iostream>
#include <string.h>
#include <vector>
#include <ctime>
#include <algorithm>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;

class Student{
	private:
		char *imie,*nazwisko;
		unsigned rokUrodzenia;
		vector<float> tablicaOcen;
	public:
		Student(char *imie,char *nazwisko,unsigned  rokUrodzenia,vector<float> tablicaOcen)
		{
			this->imie= new char[strlen(imie)];
			strcpy(this->imie,imie);
			this->nazwisko=new char[strlen(nazwisko)];
			strcpy(this->nazwisko,nazwisko);
			this->rokUrodzenia=rokUrodzenia;
			sort(tablicaOcen.begin(),tablicaOcen.end());
			this->tablicaOcen =tablicaOcen;
		}
		void wypisz();
		void wiek();
		float sredniaOcen();
		float najlepszaOcena();
		float najgorszaOcena();
		void usunOcene(float x);
		void dodajOcene(float x);
	
};
void Student::dodajOcene(float x){
	int i=0;
	while(tablicaOcen[i]<x)
		i++;
	tablicaOcen.insert(tablicaOcen.begin()+i,x);
}
void Student::usunOcene(float x){
	for(size_t i=0;i<tablicaOcen.size();i++)
	{
		if(tablicaOcen[i]==x)
		{
			tablicaOcen.erase(tablicaOcen.begin()+i);
			i--;
		}
	}
}
float Student::najlepszaOcena(){
	return this->tablicaOcen.back();
}
float Student::najgorszaOcena(){
	return this->tablicaOcen.front();
}
float Student::sredniaOcen()
{
	float s=0;
	for (size_t i=0;i<this->tablicaOcen.size();i++)
	{
		s+=tablicaOcen[i];
	}
	s/=tablicaOcen.size();
	return s;
}
void Student::wiek(){
	time_t teraz = time(NULL);
    unsigned aktualnyRok = 1900 + localtime(&teraz)->tm_year;
    cout<<aktualnyRok-this->rokUrodzenia ;
}
void Student::wypisz(){
	cout<<this->imie<<" ";
	cout<<this->nazwisko<<" ";
	cout<<this->rokUrodzenia<<endl;
	for(size_t i=0;i<this->tablicaOcen.size();i++)
		cout<<tablicaOcen[i]<<" ";
	cout<<endl;
}
int main(int argc, char** argv) {
	vector<float> tab;
	tab.push_back( 5 );
    tab.push_back( 2 );
    tab.push_back( 3 );
    tab.push_back( 1 );
   
    //for( size_t i = 0; i < tab.size(); i++ )
        //	cout<<tab[i];
	Student a("Mateusz","Cos",1999,tab),b("ktos","cos",1999,tab);
//	a.wypisz();
//	cout<<a.sredniaOcen()<<" ";
//	cout<<a.najlepszaOcena()<<" ";
 //	cout<<a.najgorszaOcena()<<" ";
 	a.dodajOcene(2);
 	a.wypisz();
 	a.usunOcene(2);
 	a.wypisz();
	return 0;
}

Copyrights 2014-2019 © Wklejaj.pl Wszelkie prawa zastrzeżone.