IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ada Discussion :

Probleme de déclaration de type. agenda en ADA


Sujet :

Ada

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Probleme de déclaration de type. agenda en ADA
    Bonjour a tous, Je suis actuellement en licence d'informatique à orleans,
    Je décoouvre le language ADA depuis a peine 1 mois et demi et nous devons réaliser un agenda.

    Je commence donc par la specification "agenda.ads"
    L'idée principale est la suivante : un agenda est un array de "rendez_vous"
    Par la suite dans ce package je pense déclarer la fonction "ajouter un rendez vous" et quelques autres fonctions...

    Seulement mon problème est le suivant, je ne sais pas comment délarer le type agenda, ce que j'ai fait ne fonctionne pas "voir code ci dessous".
    Si une ame charitable pouvait m'éclairer ca m'aiderait beaucoup .

    Merci.



    with ada.Calendar;
    use ada.Calendar;

    package agenda is

    type type_rendez_vous is (ponctuel,hebdomadaire,annulation);
    type rendez_vous ( selon : type_rendez_vous ) is private;


    private

    type rendez_vous ( selon : type_rendez_vous ) is

    record
    date_debut : ada.Calendar.Time;
    date_fin : ada.Calendar.Time;
    numero : Integer;
    motif_rdv : String(1..1000);

    case selon is

    when ponctuel => null;
    when hebdomadaire => nombre_occurence : natural;
    when annulation => nb_rdv_annules : natural;

    end case;
    end record;

    type agenda is array(numero range<>) of rendez_vous; -- /!\

    -- ne marche pas
    -- probablement car type rendez_vous est private...
    -- je souhaite trouver un moyen pour déclarer le type agenda
    -- agenda est un array de rendez vous répertoriés selon leur numero.

    end agenda;

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Le type rendez_vous étant paramétré, à la déclaration du tableau agenda, le compilateur demande le paramètre. Normal.
    Une solution est de déclarer le tableau agenda comme un tableau de type accès au type rendez_vous.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
       type rendez_vous_access is access rendez_vous;
     
       type agenda is array(numero range<>) of rendez_vous_access;

  3. #3
    Membre confirmé Avatar de Leonhart
    Inscrit en
    Mai 2009
    Messages
    262
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Mai 2009
    Messages : 262
    Points : 536
    Points
    536
    Par défaut
    Citation Envoyé par jovalise Voir le message
    Bonjour,

    Le type rendez_vous étant paramétré, à la déclaration du tableau agenda, le compilateur demande le paramètre. Normal.
    Une solution est de déclarer le tableau agenda comme un tableau de type accès au type rendez_vous.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
       type rendez_vous_access is access rendez_vous;
     
       type agenda is array(numero range<>) of rendez_vous_access;
    A noter que pour faire un rapprochement avec le développement Objet, on peut assimiler un type access avec lesdits objets (malgré ce que diront les puristes de l'Ada).

    Quand ensuite tu utilises ce type access lors d'un déclaration, tu crées une instance de cet objet. Du coup, on peut imaginer que tu déclares plusieurs rendez vous via le type access.
    "La Perfection est atteinte, non pas quand il n'y a plus rien à rajouter, mais quand il n'y a plus rien à enlever"

    Ingénieur junior développement Embarqué et Temps réel.
    >>>
    http://baptistegrand.info

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci bcp, a vous deux!

    entre temps j'ai réussi a trouver une solution, dans la déclaration du type rendez_vous, j'initialise type_rendez_vous a Ponctuel,
    du coup, plus de probleme de parametrage.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par apple4ever Voir le message
    Merci bcp, a vous deux!

    entre temps j'ai réussi a trouver une solution, dans la déclaration du type rendez_vous, j'initialise type_rendez_vous a Ponctuel,
    du coup, plus de probleme de parametrage.
    Bonjour,
    Vérifie que le paramètre ne soit pas une constante.

Discussions similaires

  1. Probleme avec les "input type="image" "
    Par khokho dans le forum Balisage (X)HTML et validation W3C
    Réponses: 9
    Dernier message: 26/03/2006, 17h12
  2. Probleme avec champ de type LONG
    Par Youby dans le forum Oracle
    Réponses: 11
    Dernier message: 17/01/2006, 16h26
  3. Probleme Alter - Changer le type d'un champ
    Par Yphon dans le forum Bases de données
    Réponses: 3
    Dernier message: 09/09/2005, 13h58
  4. Probleme de redefinition de type
    Par Mehdi Feki dans le forum C++
    Réponses: 8
    Dernier message: 21/05/2005, 00h27
  5. [LG]Problême Variable dynamique de types différents
    Par pierrOPSG dans le forum Langage
    Réponses: 2
    Dernier message: 29/04/2004, 16h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo