Packages et liste générique - Ada - Programmation
Marsh Posté le 28-04-2006 à 20:02:53
Bonjour tris,
je suis pas très fort en info mais :
Ne pourais-tu pas declarer
mot_neutre : tmot; dans ton paquetage "pmot"
initialiser mot_neutre à '.'
faire un preelaborate
mais je parle de queleque chose que je connais pas en fait.... faut que je test
Marsh Posté le 28-04-2006 à 20:20:23
Non, on peut pas, et une fonction qui retourne mot_neutre ?,
t'aurais pas le reste du code de plistgen ?
Marsh Posté le 29-04-2006 à 00:32:33
j'ai essayé les 2 mais on ne peut pas déclarer mot_neutre : tmot; dans pmot ou alors je l'ai mis aux mauvais endroits...
J'ai essayé une procédure mais la pareil il faudrai exécuter cette procédure qui rendrait mot_neutre dans pmot, et je ne vois pas comment faire ....
Je pense qu'on peut le déclarer directement mais qu'il faut le mettre au bon endroit ... pour le package pmot, le probleme ne se posait pas car le caractère neutre es l'espace qui s'inscrit directement dans l'intanciation ' '
Pour le reste de plistgen il est dans ce post:http://forum.hardware.fr/hardwaref [...] 6642-1.htm
(c'est le même avec en plus les parametres de généricité précisés en haut)
Marsh Posté le 29-04-2006 à 07:15:26
une fonction mot_neutre return tmot dans pmot + elaborate_body(pmot) dans pmot.ads, ça c'est possible !
Marsh Posté le 29-04-2006 à 07:42:41
du code
Code :
|
Marsh Posté le 29-04-2006 à 11:05:12
qu'est ce que tu entends par "elaborate_body(pmot)" ?
et pourquoi la fonction mot_neutre est en 2 fois ? je veux dire
begin
return
end
puis de nouveau
begin
les instructions
end
Marsh Posté le 29-04-2006 à 11:31:38
Sorry,
Code :
|
pragma elaborate_body -- incapable de te traduire pragma mais
Citation : |
Le corps de Pmot sera elaboré avant l'alaboration de la specification de Pphrase.
De cette maniere, dans mon exemple, mot_neutre retournera neutre initialisé et contenant 1 element => '.'
je crois.
Citation : |
Marsh Posté le 29-04-2006 à 11:48:35
oula trop compliqué pour moi ça ^^
j'ai essayé ça :
dans pmot.adb
Code :
|
je l'ai déclarée dans pmot.ads
et dans pphrase.ads
Code :
|
ça compile ... on verra si ça marche
sinon je savais pas qu'on pouvait créer des fonctions sans parametres en entrée
Marsh Posté le 29-04-2006 à 11:53:52
Marchera pas, neutre n'est visible que pour mot_neutre, a la fin de mot_neutre neutre n'existera plus, sorry.
je crois que t'as pas trop de choix,
Marsh Posté le 29-04-2006 à 12:09:30
Sorry,
Citation : |
Si ça marche je t'envoie une bouteille de champagne ! 2 même !
Si ça marche pas mon code est gratis !
Marsh Posté le 29-04-2006 à 12:27:37
ça marche ^^ mais c autre chose qui marhce pas maintenant...
dans le plistgen la fct insere apres ... mais le programme se lance sans pb !
Marsh Posté le 29-04-2006 à 21:03:37
bon ça marche presque, la saisie ne s'arrete pas au point. je pense que le mot neutre constitué n'est pas reconnu.
Marsh Posté le 04-05-2006 à 20:05:28
Salut !
si tu parles du elaborate....... non sinon le code c'est celui la que j'ai depuis le début.
je n'ai pas appris ce genre de trucs, je n'ai donc pas à l'utiliser.
Marsh Posté le 04-05-2006 à 20:10:46
Alors, je vais essayer de me casser la tête pour trouver autre chose, merci de ta reponse !
A+
Marsh Posté le 04-05-2006 à 20:16:46
je précise la saisie de mots fonctionne bien, et s'arrete bien à ' ' (l'espace) , la fonction de saisie générique n'est donc pas en cause
Marsh Posté le 04-05-2006 à 20:19:34
C'est bien la porté du mot neutre le problème ? n'est-ce pas ? As-tu essayé la même chose sans le preelaborate ?
Marsh Posté le 04-05-2006 à 21:06:50
c'est le repère qui termine une phrase qui doit poser probleme, car la saisie d'une phrase ne s'arrete pas.
Marsh Posté le 04-05-2006 à 21:18:22
Un '.'
Est-ce que tu peut poster les corps de paquetage et ton main courant, je voudrais tester le programme dans son ensemble
Sans le preelaborate, j'ai peur que ma solution soit incomplete, sait-on jamais !
A par ça, je trouve pas, à moins de faire tout à fait differement !
Peut-etre en creant un autre paquetage Mot_Neutre mais je voudrais les corps de paquetage pour compiler l'ensemble !
Marsh Posté le 05-05-2006 à 04:27:32
je vais t'envoyer le projet entier par mail ce sera plus simple ^^ ya tellement de fichiers
Marsh Posté le 05-05-2006 à 18:01:44
Pas simple, le probleme,
La solution l'est peut-être d'avantage !
up !
Edit : Petit erreur d'analise en vue !
Edit : Quelle sont tes contrainte de developpement ?
Marsh Posté le 06-05-2006 à 17:31:22
quelle erreur d'analyse ?
les fonctions sont imposées, les parametres de généricité de plisgen aussi. faut juste trouver un moyen d'exprimer un mot - point...
enfin exécute le tu verras où ça coince.
La structure en paquetages est imposée ainsi que les fonctons qu'ils doivent contenir. J'ai presque juste fait les corps des fonctions et rempli les parametres génériques.
Marsh Posté le 06-05-2006 à 18:33:54
T'es sure qu'il n'y a qu'un seul paquetage de liste generique,
Il faudrait un paquetage de liste de liste
ou alors il faut passer le 'Mot neutre' a P_phrase et implementer Phrase, et non pas faire un simple appel a plistgen
Bref, je trouve pas, je fait le truc à ma sauce !
Marsh Posté le 06-05-2006 à 18:41:10
Pour les mot le paquetage ton paquetage plistgen, tel que je le connais, pas de problème !
Pour les phrase, tu fais des truc comme, comparer des pointeurs, afficher des pointeurs, saisir des pointeurs est-ce que tu saisis l'embrouille ?
Marsh Posté le 06-05-2006 à 18:51:19
Fait peter le sujet si tu veux, parce que je m'en sort pas !
Marsh Posté le 28-04-2006 à 19:15:54
salut tout le monde, j'ai (de nouveau) un pti probleme avec une approche différente d'un projet sur lequel vous m'aviez déja bien éclairé...
voila le topo :
J'ai un package listegen qui regroupe les fonctions sur les listes, et qui commence avec les parametres de généricité suivants:
et 2 autres packages : Pmot et Pphrase
mon problème : déclarer une variable de type Tmot qui ne contiendrait qu'un point '.' pour coller au parametre de généricité "Neutre"