Forum

Catégorie : Programmes
Forum : Les programmes des internautes
Vues : 1335
Réponses : 6
Type : discussion
Etat : réponses autorisées

Générateur de phrases aleatoires (facile)

Paolo972 le 14/01/2015 à 01:25
je vous propose un generateur de phrase aleatoire :

Le principe :
- une liste de sujet
- une liste de verbe
- une liste de COD
- une liste de COI(comme les sujets)
- une liste de CCL ( complément circonstancielle de lieu )

Le prgm va tirée un mot aux hasard dans chaque liste pour en former une phrase concrète.


Code

:While 1
:entALeat(0,1->A     #LES SUJETS
:entALeat(0,1->B     #LES VERBES
:entALeat(0,1->C     #LES COD
:entALeat(0,1->D     #LES COI(SUJET)
:entALeat(0,1->E     #LES CCL
:
:if A=0
:"SUJET1->Chaine1
:if A=1
:"SUJET2->Chaine1

:if B=0
:"Verbe1->Chaine2
:if B=1
:"Verbe2->Chaine2

:if C=0
:"Cod1->Chaine3
:if C=1
:"Cod2->Chaine3

:if D=0
:"Coi1->Chaine4
:if D=1
:"Coi2->Chaine4

:if E=0
:"CCL1->Chaine5
:if E=1
:"CCL1->Chaine5

:EffEcr
:Disp Chaine1
:Disp Chaine2
:Disp Chaine3
:Disp Chaine4
:Disp Chaine5
:Pause
:End


Exemple de phrase : Jean-Michel a caressé la chatte de Marie dans la cuisine


Le nombre de possibilité monte tres vite ! Ex : avec 10 noms, 7 verbes,
6 cod, 10 coi et 4 ccl
Il y a 16800 possibilité de phrases.

Voila un programme simple mais qui peut etre marrant a faire si vous avez de l'imagination.
linkakro le 14/01/2015 à 11:04
Simple et pratique.
Le code peut être amélioré avec la variable dernière réponse et aucun stockage des chaînes.
Code
:While 1
:entALeat(0,1->A     #LES SUJETS
:entALeat(0,1->B     #LES VERBES
:entALeat(0,1->C     #LES COD
:entALeat(0,1->D     #LES COI(SUJET)
:entALeat(0,1->E     #LES CCL

:EffEcr

:If A=0
:"SUJET1
:If A=1
:"SUJET2

:Disp Rép
:If B=0
:"Verbe1
:If B=1
:"Verbe2

:Disp Rép
:If C=0
:"Cod1
:If C=1
:"Cod2

:Disp Rép
:If D=0
:"Coi1
:If D=1
:"Coi2

:Disp Rép
:If E=0
:"CCL1
:If E=1
:"CCL1

:Disp Rép
:End
Paolo972 le 14/01/2015 à 19:36
Non, cela ne fonctionne pas ! Il faut que la ligne soit la dernière du programme pour qu'elle soit affiché automatiquement.
m@thieu41 le 15/01/2015 à 14:44
En fait la chaine est stockée dans la variable ans/rep quand tu fais ça, le "Disp Rep" permet de l'afficher winkle.gif
linkakro le 15/01/2015 à 20:19
La variable dernière réponse est affectée par tous les calculs et la fonction Pause. Elle est indépendante de l'affichage automatique de la dernière ligne.
katvador le 18/01/2015 à 18:50
Paolo972 a écrit :

Exemple de phrase : Jean-Michel a caressé la chatte de Marie dans la cuisine

C'es moi où cette phrase comporte une petite allusion ? clown.gif
Paolo972 le 18/01/2015 à 20:28
katvador a écrit :
Paolo972 a écrit :

Exemple de phrase : Jean-Michel a caressé la chatte de Marie dans la cuisine

C'es moi où cette phrase comporte une petite allusion ? clown.gif


Non pas du tout :-P