[DB-AL] Random/vrai et faux dans une liste de questions ?

Pour les scripts écrits en C#
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :

Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé

Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie

Exemple :

[DB-RS] Mouvement perso multijoueur
Julianx2
Messages : 213
Inscription : 25 Sep 2013 22:23
Localisation : Paris

Re: [RESOLU][DB-AL] Random/vrai et faux dans une liste de questions ?

Message par Julianx2 » 28 Jan 2017 11:14

Hey Boubouk,

Merci pour la piste. J'ai néanmoins un problème : j'utilise un random range :

Code : Tout sélectionner

void SetCurrentQuestion(){

        int randomQuestionIndex = Random.Range (0, unansweredQuestions.Count);
       
        currentQuestion = unansweredQuestions [randomQuestionIndex];
		factText.text = currentQuestion.fact;

    }

    void SetCurrentAnswer()
    {

        int randomAnswerIndex = Random.Range(0, unansweredAnswer.Count);

        currentAnswer = unansweredAnswer[randomAnswerIndex];
        AnswerText.text = currentAnswer.factAnswer;

    }

Les questions et réponses ne sont pas les mêmes de ce fait !
Dernière édition par Julianx2 le 07 Fév 2017 16:11, édité 2 fois.
Quizy - Culture Générale & Quiz - https://play.google.com/store/apps/deta ... XON.Quizy2

Moi 1971
Messages : 727
Inscription : 29 Sep 2015 13:38

Re: [DB-AL] Random/vrai et faux dans une liste de questions ?

Message par Moi 1971 » 28 Jan 2017 12:36

Bonjour,
Comprends-tu comment fonctionne un tableau?
Avec ta manière de faire, et 3 tableaux, il te faut utiliser le même "int randomQuestionIndex" pour parcourir TOUS LES tableaux en même temps.
======================================
TABLEAU_QUESTION[]
INDEX 0 => QUESTION_1
INDEX 1 => QUESTION_2
INDEX 2 => QUESTION_3
INDEX 3 => QUESTION_4

======================================
TABLEAU_REPONSE[]
INDEX 0 => REPONSE_1
INDEX 1 => REPONSE_2
INDEX 2 => REPONSE_3
INDEX 3 => REPONSE_4

======================================
TABLEAU_EXPLICATION[]
INDEX 0 => EXPLICATION_1
INDEX 1 => EXPLICATION_2
INDEX 2 => EXPLICATION_3
INDEX 3 => EXPLICATION_4

======================================
int randomQuestionIndex ENTRE 0 et 3
Ce qui pourrait donner :

Code : Tout sélectionner

void AfficherLaQuestion(){

        int indexDeLaQuestionAuHasard = Random.Range (0, TABLEAU_QUESTION.Count);
       
        string questionActuelle = TABLEAU_QUESTION [indexDeLaQuestionAuHasard];
        string reponseActuelle = TABLEAU_REPONSE [indexDeLaQuestionAuHasard];
        string explicationActuelle = TABLEAU_EXPLICATION [indexDeLaQuestionAuHasard];
      
     // Affichage de la question, réponse et explication...
     factText.text = questionActuelle;
     AnswerText.text = reponseActuelle;
     explicationText.text = explicationActuelle;
     
    }
  

Julianx2
Messages : 213
Inscription : 25 Sep 2013 22:23
Localisation : Paris

Re: [DB-AL] Random/vrai et faux dans une liste de questions ?

Message par Julianx2 » 30 Jan 2017 12:32

Merci,

Non je ne sais pas comment cela fonctionne ! Je vois ce que tu essaye de me dire via l'exemple mais j'obtient des erreur de "convertion du string". Alors c'est en haut que je dois mal déclarer...

C'est ici que je bute pour déclarer les autres tableaux :

public Question[] questions;
private static List<Question> unansweredQuestions;
public static Question currentQuestion;
Quizy - Culture Générale & Quiz - https://play.google.com/store/apps/deta ... XON.Quizy2

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6220
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: [DB-AL] Random/vrai et faux dans une liste de questions ?

Message par boubouk50 » 30 Jan 2017 12:52

Il te suffit simplement de stocker l'index de la question et de l'utiliser pour la réponse.
La question et la réponse sont liées, il ne faut pas réaffecter un nouvel index pour la réponse. Ça n'a pas de sens d'aller chercher une réponse aléatoire.
Pour ce qui est de l'utilisation d'un tableau, tu trouves toutes les explications sur le net en français: Tableau + C#.
Ce n'est pas compliqué un tableau, c'est juste la dimension supérieure d'une variable. Au lieu d'avoir une variable tu as un nombre défini de variables. L'accès se fait par l'index pour aller chercher la variable souhaitée.

Tu ne peux pas prendre le code de Moi1971 tel quel, tu ne stockes pas des string, mais des questions. Son exemple te montre exactement ce que tu dois faire, il te faut juste le traduire pour ton code à toi.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

Moi 1971
Messages : 727
Inscription : 29 Sep 2015 13:38

Re: [DB-AL] Random/vrai et faux dans une liste de questions ?

Message par Moi 1971 » 30 Jan 2017 13:25

Oui, j'ai écrit "Ce qui pourrait donner :" C'est pas à prendre au pied de la lettre.
Alors une dernière fois, je crois que tu te perds en voulant utiliser les exemples que tu as trouvés sans apprendre avant comment fonctionnent les bases. Toi, tu veux utiliser une liste de tableau. Trop compliqué pour toi pour le moment. Je ne dis pas ça pour t’embêter, je le dis pour que tu progresses et que par la suite tu maîtrise la chose.
Pour les tableaux comprends tu ça ? https://msdn.microsoft.com/fr-fr/library/9b9dty7d.aspx
Tu peux lire ceci : https://msdn.microsoft.com/fr-fr/librar ... s.71).aspx

Pour prendre exemple sur ton code, tu écris :

Code : Tout sélectionner

public Question[] questions;
Tu déclares une variable nommée "questions" qui est un tableau de type "Question[]" et qui permet un accès à ses (= les siennes) données de manière public. "Question[]" est un tableau à une dimension (=unidimensionnelle) qui contient des données de type "Question". Il te faut donc que quelque part dans ton code le type "Question" soit défini.
Rien que pour cette première ligne je suis certain que tu n'as pas les connaissances pour l'utiliser.

L'exemple des 3 tableaux, montre juste que d'une manière plus simple tu peux réaliser ce que tu veux faire.

Julianx2
Messages : 213
Inscription : 25 Sep 2013 22:23
Localisation : Paris

Re: [DB-AL] Random/vrai et faux dans une liste de questions ?

Message par Julianx2 » 30 Jan 2017 23:46

Merci à vous j'ai fini par comprendre le truc ! :super:

Le pire, c'est que c'est logique. Je vous montre le rendu final prochainement ;)
Quizy - Culture Générale & Quiz - https://play.google.com/store/apps/deta ... XON.Quizy2

Julianx2
Messages : 213
Inscription : 25 Sep 2013 22:23
Localisation : Paris

Re: [DB-AL] Random/vrai et faux dans une liste de questions ?

Message par Julianx2 » 04 Fév 2017 11:39

Voilà la base de l'application est terminée, merci encore pour votre aide.

Image
Quizy - Culture Générale & Quiz - https://play.google.com/store/apps/deta ... XON.Quizy2

Avatar de l’utilisateur
Iwa
Messages : 1131
Inscription : 25 Avr 2012 16:20
Contact :

Re: [DB-AL] Random/vrai et faux dans une liste de questions ?

Message par Iwa » 07 Fév 2017 11:26

Hello,

Merci de basculer le sujet en Résolu en éditant le premier message de ton sujet en ajoutant au devant du titre [RESOLU] si tu as tout ce qu'il te faut.
"N'est stupide que la stupidité Monsieur..." - Forest Gump
... sauf si tu lis pas ça :)

Si tu as tout ce qu'il te faut, merci de penser à basculer ton sujet en [RESOLU] en éditant ton tout premier post ;)

Répondre

Revenir vers « (C#) CSharp »