Précédent   Forum du club des développeurs et IT Pro > Autres langages > Autres langages > Ada
Ada Forum d'entraide sur la programmation en langage Ada
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 01/12/2012, 19h40   #1
kevine2710
Invité de passage
 
Homme
Étudiant
Inscription : décembre 2012
Messages : 12
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Aude (Languedoc Roussillon)

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : décembre 2012
Messages : 12
Points : 1
Points : 1
Par défaut Problème avec les enregistrements

Bonjour,

Je voudrais créer un solver de sudoku mais j'ai un petit soucis avec les enregistrements que je n'ai pas encore vu en cours. C'est pour cela que je demande votre aide.

Tout d'abord je crée deux tableaux:

Code :
1
2
 TYPE Tplateau IS ARRAY (1..9,1..9) of integer;-- plateau du sudoku
   TYPE TTabPlateau IS ARRAY (1..2000) OF Tplateau;
Et ensuite l'enregistrement qui représente la frontière du sudoku :

Code :
1
2
3
4
TYPE TFrontiere IS RECORD
      T : TTabplateau;
         Last : Integer;
     END RECORD;
Mon problème est que je dois créer une procédure avec: FR {D/R} : TFrontiere; P {D} TPlateau
--prerequis : Fr non vide
-- action : retourne dans P le dernier Plateau ajouté à Fr et met a jour Fr
Ce qui donne
Code :
1
2
3
4
5
6
7
8
9
10
11
12
PROCEDURE Pop ( Fr : IN OUT TFrontiere; P : OUT TPlateau) IS -- utilisation de la fonction vide qui retourne vrai si Fr est vide

      frvide:Boolean;

   BEGIN
      frvide:=Vide(Fr);
      IF frvide=false THEN:=Fr.T
         P:=Fr.T(last);
         Fr.Last:=Fr.Last+1;
         Ajoute(Fr,P);
      end if;
   END Pop;
Voici la procédure Affiche qui doit ajouter P à F

Code :
1
2
3
4
5
PROCEDURE Ajoute (Fr : IN OUT TFrontiere; P : IN TPlateau ) IS

   BEGIN
     fr.T(fr.last):=p;
   END Ajoute;
Je n'ai aucune erreur lors de la compilation mais je ne suis pas sur de la validité de ma procédure, de plus je n'arrive pas à afficher tout les plateaux car j'obtient une grosse erreur lors de la compilation.

Merci d'avance pour votre aide
kevine2710 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/12/2012, 03h36   #2
jovalise
Membre éclairé
 
Inscription : juin 2006
Messages : 767
Détails du profil
Informations personnelles :
Âge : 43

Informations forums :
Inscription : juin 2006
Messages : 767
Points : 328
Points : 328
Bonjour, c'est quoi l'erreur à la compilation ?
Parce que ligne 7 de pop, il manque une opérande après le then
__________________
Mon développement
jovalise est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 19h14.


 
 
 
 
Partenaires

Hébergement Web