22 qDebug() << Q_FUNC_INFO;
32 qDebug() << Q_FUNC_INFO;
44 qDebug() << Q_FUNC_INFO <<
"Score = " << score <<
" : " <<
solution;
45 emit
solutionTrouver(
"↣ " + QString::number(score) +
" ➤ " + solution +
" ↢");
58 if((score / (points*3)) >= 1)
77 for(
int i=start; i>1 && !trouve; i--)
81 combinaison =
"T" + QString::number(i);
99 if((score / (points*2)) >= 1)
118 for(
int i=
BULL; i>1 && !trouve; i--)
125 combinaison =
"D" + QString::number(i);
143 if((score / points) >= 1)
160 for(
int i=
BULL; i>0 && !trouve; i--)
167 combinaison = QString::number(i);
185 if(score == (points*2))
226 for(
int flechettes=nbFlechettes; flechettes>0 && score>0;)
260 if(flechettes == 0 && score != 0)
267 flechettes = nbFlechettes;
278 flechettes = nbFlechettes;
300 int nbFlechettes = 0;
304 for(
int i=
BULL; i>0 && !trouve; i--)
310 nbFlechettes = flechettes;
314 if(
rechercher(score, nbFlechettes) || score == 0)
316 solution +=
" D" + QString::number(i) +
"*";
void trouverSolution(int s, int flechettes)
Méthode qui trouve la meilleure solution.
QString solution
contient la solution pour finir la partie
Déclaration de la classe solution (Module Ecran-DARTS)
void transmettreSolution(int score)
Méthode qui émet un signal pour que l'Ihm affiche la solution trouver.
void solutionTrouver(QString solution)
bool aTriple(int points, const int score)
Test si la triple choisie et possible.
bool rechercher(int score, int nbFlechettes, bool still=false)
Méthode qui recherche la meilleure combinaison pour finir.
~Solution()
Destructeur de la classe Solution.
bool aSimple(int points, const int score)
Test si le simple choisi et possible.
bool rechercherDouble(int &score, QString &combinaison)
Méthode qui recherche le meilleur double pour la solution.
Solution(QObject *parent=nullptr)
Constructeur de la classe Solution.
bool rechercherSimple(int &score, QString &combinaison)
Méthode qui recherche le meilleur simple pour la solution.
bool rechercherTriple(int &score, QString &combinaison, int start)
Méthode qui recherche le meilleur triple pour la solution.
bool estDouble(int points, const int score)
Méthode qui teste si les points son double.
bool extraireDouble(int &score, int cible)
Méthode qui cherche le double pour finir la partie.
bool aDouble(int points, const int score)
Test si le double choisie et possible.
La classe QObject est la classe de base de tous les objets Qt. Elle permet à ces objets Qt de dispose...