Ok, un profil c'est juste un identifiant et à part on a une base de descriptions de profil. Si le but est de n'afficher une fiche descriptive, imaginons un fichier html par exemple, on peut simplement faire un dossier avec pleins de fichiers html, un par profil, et considérer que l'identifiant est le nom du fichier ou un moyen de l'obtenir facilement, et par ailleurs un moyen d'obtenir son nom affichable si nécessaire (si l'identifiant n'est pas directement le nom).
La solution par tableau dans ce cas reste le plus simple, si tu n'as jamais fait de classe (c'est quand même un peu la base dans un langage comme Java, orienté objet), et en particulier si c'est pour du one shot.
Le code pour afficher une fiche de profil (dans un navigateur) pourrait se résumer à :
Desktop.getDesktop().browse(Paths.get(CHEMIN_DOSSIER_PROFILS + profil + ".hmtl").toUri());
avec CHEMIN_DOSSIER_PROFILS le chemin vers de dossier de profils et profile le nom du profil et du fichier (sans l'extension).
En conséquence, avec trois tableaux tu peux faire le programme principal :
1 2 3 4 5 6 7 8 9 10 11 12 13
|
String[] questions = lireQuestions(); // un tableau de 40 questions
String[][] questionsEtReponses = lireQuestionsEtResponsesDansFichier(); // un tableau de 40*9 propositions de réponse possible
String[][] profilsParReponses = lireProfilParReponsesDansFichier(); // un tableau de 40*9 identifiant de profil
for(int i=numeroQuestion; numeroQuestion<questions.length; numeroQuestion++) {
String question = questions[numeroQuestion];
String[] reponses = questionsEtReponses[numeroQuestion];
int numeroDeReponseChoisie = poserQuestion(question, reponses);
afficherProfil( pofilesParReponse[numeroQuestion][numeroDeReponseChoisie] );
} |
Avec des objets (décrits par des classes) on aurait, par exemple :
1 2 3 4 5
| List<Question> questions = lireDansFichier();
for(Question question : questions) {
Reponse reponseDonneeParUtilisateur = poserQuestion( question );
afficherProfil( reponseDonneeParUtilisateur.getProfil() );
} |
Partager