Ajout des accolades là où il n'y en a pas

This commit is contained in:
Mylloon 2022-04-05 19:08:03 +02:00
parent cafccfb29b
commit 55a5a3aea1
Signed by: Anri
GPG key ID: A82D63DFF8D1317F
2 changed files with 33 additions and 17 deletions

View file

@ -2,8 +2,9 @@
#include "../includes/organisme.hpp"
Organisme::Organisme(const int universID_p, const int index_p): m_univers_ID(universID_p), m_index(index_p), ID(m_total_ID + 1) {
if(Univers::m_liste_univers[m_univers_ID].first.size() == 0) // si il n'y a plus d'index de libres
if(Univers::m_liste_univers[m_univers_ID].first.size() == 0) { // si il n'y a plus d'index de libres
throw std::domain_error("Trop d'organismes pour l'univers.");
}
m_total_ID = ID; // + 1 aux ID
Univers::m_liste_univers[m_univers_ID].second.push_back(this);
}
@ -13,8 +14,10 @@ Organisme::~Organisme(void) {
}
char Organisme::lettre(const int id) noexcept {
if(m_correspondance[id])
if(m_correspondance[id]) {
return m_correspondance[id];
}
return ' ';
}
@ -23,8 +26,9 @@ std::pair<int, std::pair<int, int>> Organisme::position(const int id) const noex
}
int Organisme::recuperationIndexLibre(const int universID_p) {
if(Univers::m_liste_univers[universID_p].first.size() == 0) // normalement c'est impossible que cette expection apparaisse
if(Univers::m_liste_univers[universID_p].first.size() == 0) { // normalement c'est impossible que cette expection apparaisse
throw std::domain_error("Impossible d'attribuer une position à l'organisme.");
}
int res = Univers::m_liste_univers[universID_p].first.back();
Univers::m_liste_univers[universID_p].first.pop_back();

View file

@ -9,8 +9,9 @@ Univers::Univers(const int longueur, const int largeur): m_longueur(longueur),
m_total_ID = ID; // + 1 aux ID
// On ajoute tous les index possibles car pour l'instant le plateau est vide
for(int i = 0; i < m_taille_univers; ++i)
for(int i = 0; i < m_taille_univers; ++i) {
m_liste_univers[ID].first.push_back(i);
}
// On mélange notre vecteur d'index non occupés
std::random_device nombre_aleatoire;
@ -28,49 +29,60 @@ Univers::Univers(const int longueur, const int largeur): m_longueur(longueur),
}
Univers::~Univers(void) {
for(auto it: m_liste_univers[ID].second)
for(auto it: m_liste_univers[ID].second) {
delete it;
}
}
void Univers::affichage(void) const noexcept {
// On génère le plateau pour l'affichage
int * plateau = new int[m_taille_univers]();
for(auto it: m_liste_univers[ID].second)
for(auto it: m_liste_univers[ID].second) {
plateau[it->position(ID).first] = it->ID;
}
for(int i = 0; i < m_largeur * 4; ++i)
if(i == 0)
for(int i = 0; i < m_largeur * 4; ++i) {
if(i == 0) {
std::cout << ""; // coin supérieur gauche
else
} else {
std::cout << ""; // haut
}
}
std::cout << "" << std::endl; // coin supérieur droit
std::cout << ""; // premier côté gauche
for(int i = 0; i < m_taille_univers; i += m_largeur) {
for(int j = 0; j < m_largeur; ++j) {
std::cout << Organisme::lettre(plateau[i + j]);
if(j == m_largeur - 1)
if(j == m_largeur - 1) {
std::cout << ""; // côté droit
else
} else {
std::cout << " ";
}
}
if(i != m_taille_univers - m_largeur) {
std::cout << std::endl << ""; // saut de ligne et suite du côté gauche
}
if(i != m_taille_univers - m_largeur) std::cout << std::endl << ""; // saut de ligne et suite du côté gauche
}
std::cout << std::endl;
for(int i = 0; i < m_largeur * 4; ++i)
if(i == 0)
for(int i = 0; i < m_largeur * 4; ++i) {
if(i == 0) {
std::cout << ""; // coin inférieur gauche
else
} else {
std::cout << ""; // bas
}
}
std::cout << "" << std::endl; // coin inférieur droit
delete[] plateau;
}
bool Univers::enVie(void) const noexcept {
for(auto organisme: m_liste_univers[ID].second) // on parcours les organismes de notre univers
if(organisme->animal()) // si on a un animal
for(auto organisme: m_liste_univers[ID].second) { // on parcours les organismes de notre univers
if(organisme->animal()) { // si on a un animal
return true; // renvoie true
}
}
return false; // sinon renvoie false
}