Se connecter avec
S'enregistrer | Connectez-vous

Aide exercice langage algorithmique

Dernière réponse : dans Programmation

Bonjours à tous, voici un problème que j'essaie de résoudre :

On considère un tableau d'entiers à deux dimensions (matrice), de taille 3x3.
1) Ecrire une fonction appartient (v,t) permettant de tester si un nombre v est
présent dans le tableau t.
2) Ecrire une fonction permettant de tester si chaque chiffre de 1 à 9 apparaît exactement
une fois dans le tableau

On me demande de rédiger en langage algorithmique pour ensuite écrire le programme sur Fortran.

1) Voici ce que j'ai écris

Variable :
entier : I,J
réel : v
A : tableau (3,3)

pour I de 1 à 3
pour J de 1 à 3
lire A(I,J)
fin pour J
fin pour I

début

pour I de 1 à 3
pour J de 1 à 3
Si A(I,J) = v alors
afficher 'v est présent'
fin Si
fin pour J
fin pour I

FIN

2) Pour la deuxième question je pensai utiliser une procédure mais je vois pas trop comment faire si quelqu'un à une autre solution.
Lassé par la pub ? Créez un compte

salut,

tu crées un autre tableau de 10 entiers. Chaque case représentant (virtuellement) un numérique. ( int toto[10] ) . Que tu initialise entièrement à 0.

Ensuite,
Dans ta matrice,A chaque fois que tu lis un chiffre, tu incrémentes le compteur (dans le tableau) correspondant au chiffre en cours.

tu finis par lire ton tableau de 0 à 9 en validant que chaque case = 1 ... si une seule est différente, tu prouve qu'1 chiffre n'apparait pas (ou apparait plus d'une fois)


tu peux même accélerer (optimiser) le traitement en "breakant" si une incrémentation de compteur dépasse la limite de 1 . ca plaira à ton prof :) 
Lassé par la pub ? Créez un compte
Tom's guide dans le monde