Skip to content

Instantly share code, notes, and snippets.

@farmincoding
Last active August 1, 2021 18:23
Show Gist options
  • Save farmincoding/8d126e978e6103a828f362eb85cf52fd to your computer and use it in GitHub Desktop.
Save farmincoding/8d126e978e6103a828f362eb85cf52fd to your computer and use it in GitHub Desktop.
#pragma once
#include <string>
#include <vector>
#include <iostream>
using namespace std;
class Tanulo;
class Egyetem
{
private:
string enev;
int ponthatar;
vector <Tanulo*>hallgatok;
public:
Egyetem(string enev, int ponthatar):enev(enev), ponthatar(ponthatar){}
void felvetel(Tanulo* jelentkezo) {
hallgatok.push_back(jelentkezo);
}
int getPont() const { return ponthatar; }
string getNev() const { return enev; }
vector <Tanulo*> getTanulok() {
vector <Tanulo*>seged;
for (int i = 0; i<hallgatok.size();i++) {
seged.push_back(hallgatok[i]);
}
return seged;
}
};
#include <iostream>
#include "Rendszer.h"
#include "Tanulo.h"
using namespace std;
int main()
{
Tanulo Ricsi("Szerdahelyi Richard", 410);
Tanulo Bastya("Kocsis Patrik", 380);
Tanulo Bazsi("Sziklai Balazs", 390);
Rendszer Felvi;
Felvi.egyetemhozzaad("Szechenyi Istvan Egyetem", 280);
Felvi.egyetemhozzaad("ELTE", 370);
Ricsi.jeletkezes(Felvi.getEgyetemByNev("Szechenyi Istvan Egyetem"));
Bastya.jeletkezes(Felvi.getEgyetemByNev("Szechenyi Istvan Egyetem"));
Bazsi.jeletkezes(Felvi.getEgyetemByNev("ELTE"));
Felvi.kiir();
}
#pragma once
#include <string>
#include <vector>
#include "Egyetem.h"
#include <iostream>
#include "Tanulo.h"
using namespace std;
class Rendszer
{
private:
vector <Egyetem*> egyetemek;
public:
Rendszer(){}
Egyetem* getEgyetemByNev(string nev) {
for (auto e : egyetemek) {
if (e->getNev() == nev) {
return e;
}
}
return nullptr;
}
void egyetemhozzaad(string nev, int pont) {
egyetemek.push_back(new Egyetem(nev, pont));
}
void kiir() {
cout << "2019-es felveteli eredmenyek: " << endl <<endl;
for (auto e : egyetemek) {
cout<<e->getNev();
cout << endl;
vector<Tanulo*> seged = e->getTanulok();
for (int i = 0; i < seged.size(); i++) {
cout<<seged[i]->getNev();
}
cout << endl;
}
}
~Rendszer() {
for (auto e : egyetemek) {
delete e;
}
}
};
#pragma once
#include <string>
#include "Egyetem.h"
#include <iostream>
using namespace std;
class Tanulo
{
private:
string nev;
int pont;
public:
Tanulo(string nev, int pont):nev(nev), pont(pont){}
string getNev() const { return nev; }
void jeletkezes(Egyetem* egyetem) {
if (egyetem->getPont() <= pont) {
egyetem->felvetel(this);
}
}
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment