IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Programmation pour Quizz


Sujet :

WinDev

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 14
    Points : 9
    Points
    9
    Par défaut Programmation pour Quizz
    Bonjour à tous,
    Je suis en train de créer un quizz à l'aide d'un libellé "Question" relié à ma base de données "Question", dans lequel s'affiche une question au hasard (à l'aide de InitHasard) et de 4 libellés "Réponse" dans lesquels s'affichent 3 mauvaises réponses et une bonne. Et j'ai qq questions à ce propos :

    - Comment faire pour que la même question ne soit pas posée 2 fois ?
    - Comment faire pour que la bonne réponse ne soit pas affichée à chaque fois dans le même libellé ?
    Merci de vos réponses
    A bientôt

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 278
    Points : 2 151
    Points
    2 151
    Par défaut
    Comment faire pour que la même question ne soit pas posée 2 fois ?
    Si tu stockes les réponses... tu peux facilement savoir quelle question a déjà été posée.
    Sinon je te propose de faire un tableau de booléen (dimensionner en fonction du nb de question).

    Comment faire pour que la bonne réponse ne soit pas affichée à chaque fois dans le même libellé ?
    Si tu sélectionne tes réponses via une requête SQL il suffit de faire un ORBER BY RANDOM()
    Sinon je sais pas...
    SQL : le véritable Esperanto

    "Les patates à ta tata épatent ton tonton mais les pates aux thons à ton tonton épatent pas ta tata." (Michel Souris)

    MERCI DE NE PAS M'ENVOYER DE MESSAGE PRIVE POUR DES QUESTIONS TECHNIQUES SANS MON ACCORD !

  3. #3
    Membre chevronné Avatar de laurent30s
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 881
    Points : 1 771
    Points
    1 771
    Par défaut
    Citation Envoyé par Lamantin Voir le message
    - Comment faire pour que la même question ne soit pas posée 2 fois ?
    - Comment faire pour que la bonne réponse ne soit pas affichée à chaque fois dans le même libellé ?
    Il s'agit de la même problématique dans les 2 cas

    Tu peux tirer au hasard une question ou réponse et à chaque tirage vérifier que la question ou réponse n'a pas déjà était tiré.
    Dans les derniers tirage il risque d'y avoir de nombreux cycle avant de tomber sur ceux qui n'ont pas déjà était tiré.

    Tu peux sortir de la liste des possibles les questions ou réponses tirés au sort.
    Ainsi on ne peut pas tiré 2 fois la même. Ça oblige à tenir 2 listes...

    Sinon la méthode que je préfère, plutôt que de tirer au sort, il suffit de mélanger...

    Petite procédure qui crée un ordre aléatoire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    PROCEDURE Melange(nValMini est un entier,nValMaxi est un entier)
     
    nMini est un entier = nValMini
    nMaxi est un entier = nValMaxi
    tabListe est un tableau d'entier
     
    i,j,t sont des entiers
     
    // Rempli la liste
    POUR i = nMini A nMaxi
    	Ajoute(tabListe,i)
    FIN
     
    // Fait des permutations pour mélanger
    POUR i = nMini A nMaxi
    	j = Hasard(i,nMaxi)
    	// permute
    	tabListe[i] <=> tabListe[j]
    FIN
     
    RENVOYER tabListe
    Exemple d'utilisation mélange au hasard les valeurs de 1 à 10 et affiche le résultat dans une table
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    tabListe est un tableau d'entier
     
    tabListe = Melange(1,10)
     
    TableSupprimeTout(TABLE_SansNom8)
     
    POUR i = 1 A 10
    	TableAjouteLigne(TABLE_SansNom8,tabListe[i])
    FIN
    Bon dev
    Laurent

    - C’est génial.
    - Non c’est bizarre.
    - Justement quand c’est simple y’a des milliers de réponses et quand c’est bizarre y’en a aucune.

Discussions similaires

  1. Réponses: 3
    Dernier message: 27/08/2007, 15h40
  2. [Info] programme pour J2ME
    Par ehmppowa dans le forum Java ME
    Réponses: 4
    Dernier message: 12/08/2005, 19h37
  3. existe t 'il des programme pour transformer les bases
    Par creazone dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 05/10/2004, 14h11
  4. [TP]Programme pour piloter port série et parallèle...
    Par DDR dans le forum Turbo Pascal
    Réponses: 10
    Dernier message: 15/04/2004, 21h52
  5. Créer de programme pour WIndows avec Turbo Pascal
    Par kaygee dans le forum Turbo Pascal
    Réponses: 16
    Dernier message: 20/08/2003, 23h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo