Bonjour,

est-ce que quelqu'un pourrait m'aider pour cet exercice s'il vous plait, ça serait super sympa, merci.


Enoncé:
un tableau grille à 10 lignes et 10 colonnes contient les données relatives
à un jeu de mots croisés simulés sur ordinateur.Chaque élément de ce
tableau est une structure de type Case, contenant les deux champs :

noir: valeur booléenne affecté à vrai si la case correspondante de la grille est une case
noir, représenté dans le tableau par (=).(qui ne peut donc contenir une lettre)


lettre: contient soit le caractères inscrit par le joueur dans la case, soit le caractère
étoile(*) si la case est vide(est donc on peut placer une lettre)



la question est de donner le nombre de mots complétés par le joueur.


par exemple dans le tableau ci dessous: le nombre de mots et de 4.


* * A * * * = * * *
* * L * = * * * * *
L O G I Q U E = * *
* * O = * * * = * *
= * R * = * = * * *
* * I = O * * * = *
* = T A B L E A U =
* * H = J * * * * *
* * M * E * = * * *
* * E * T * * * * *

mon raisonnement et là où je bloque: donc je parcoure d'abord le tableau colonne par colonne(ensuite ligne par ligne) si
la première case est vide ou contient une case noir(=) je passe à la case suivante si celle-ci contient une
lettre, je dois lire toutes les lettres qui la suivent jusqu'à je tombe sur la case noir(=) ou fin de colonne. et là incrémenté nbMots et passer à la colonne suivant ou la case approprié


ps: je peux utiliser le module estLettre(car) : qui retourne vrai si car est une lettre.



une fois qu'une case contient une lettre je n'arrive pas à lire à toutes les lettres qui la suivent.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
Module motsCroisé(tab[1 à 10, 1 à 10]de caractère) => Entier
 nbMots: entier
 
   pour i de 1 à 10 faire
       pour j de 1 10 faire 
         si (estLettre(tab[i][j].lettre )) alors
             // si je rentre là c'est que la case est une lettre et c'est également là où je bloque je n'arrive pas à lire jusqu'à la case noir ou fin de colonne(puis incrémenté nbMots)