Texte : Un générateur de phrases

Exercice simple qui permet de se confronter à quelques nouvelles variables, les strings (chaines de caractères) et array (les variables dites "tableaux"), ainsi qu’afficher un texte.

Le code ci après commence par créer trois variables tableaux (des arrays, donc) et stocke à l’intérieur une série de mots ou morceaux de phrases.

Ensuite, à chaque exécution du draw, on choisit aléatoirement un des éléments de chaque array, on assemble le tout pour enfin l’afficher.

Voici le code annoté :

String[] sujets = {
 "Le pape", "Ma mere", "Ton père","Ton meilleur ami","Le type à côté de toi","Ton voisin", "Le monde", "La mer" };
String[] verbes = {
 "est","","n'est plus","devient", "semble","a cessé d'être","sera demain","trouvera" };
String[] complements = {
 "un salaud","un chic type","hostile","ton meilleur ami","ton seul choix","ta seule famille","la mort","une feuille","un logiciel" };
PFont mapolice;

void setup(){
 size(700,200);
 // declarer la police auparavant créée avec l'outil de processing (tools/create font...)
 mapolice = loadFont("DIN-Light-48.vlw");
 textFont(mapolice,24);
 textAlign(CENTER);
 smooth();
 fill(255);
}

void draw(){
 background(0);
 // choisir un sujet
 float alea=random(0,sujets.length);
 int lesujet=int(alea);

 // choisir un verbe
 alea=random(0,verbes.length);
 int leverbe=int(alea);

 // choisir un verbe
 alea=random(0,complements.length);
 int lecomplement=int(alea);
 
 // assembler le tout et afficher
 String lasentence=sujets[lesujet] + " " + verbes[leverbe] + " " + complements[lecomplement];
 text(lasentence, width/2, 100);
 
 // une pause pour lire la phrase
 delay(3000);
}

N’oubliez pas de générer la police qui accompagne le script.

Etendre ce script

Ce genre de script peut comme d’habitude être agrémenté par quelques lignes : ajouter une image, remplacer le random par une valeur récupérée (la fameuse horloge à texte), etc.

Forum

  • Exemple : Un générateur de phrases par RomainV , 11 juin 2010

    Pour ceux qui voudraient avoir un exemple d’implémentation du même principe, mais à beaucoup plus grande échelle*, j’ai développé un générateur de phrases sur le principe décrit ci-dessus. Il est écrit en javascript, tout se déroule sur le poste client, donc pour les curieux qui voudraient en consulter la source : elle est totalement accessible via votre navigateur.

    * pour donner une idée : il est capable de générer environ (10 puissance 75) phrases, uniques et grammaticalement correctes.

  • Exemple : Un générateur de phrases par Henry , 22 avril 2013

    Merci pour cet aide qui je pense, me sera bien utile un jour ou l’autre !

    Au plaisir de vous relire rapidement !

    Henry de l’échelle de toit