[C] TD3 Exo8

Page 1 sur 2 1, 2  Suivant

Voir le sujet précédent Voir le sujet suivant Aller en bas

resolu [C] TD3 Exo8

Message  LoopinG le Sam 15 Oct 2011, 18:33

Bonjour tout le monde,

j'aimerai savoir comment pouvoir réutiliser la fonction

Code:
const Date * getOneDate (void) ;
/*Cette fonction retourne l'adresse d'une Date différente à chaque appel ou NULL lorsque la fonction n'a plus de date*/

J'ai bien sur compris sa description et j'aurai voulu savoir si on pouvait remettre cette fonction à zéro pour qu'elle redonne des dates jusqu'à ce que la fonction n'en ait plus à fournir.
Ceci dans le but de tester toutes mes fonctions du TDC1 et 2 dans plusieurs boucle while.(une fonction par boucle).

Voilà merci d'avance pour vos futures commentaires Smile





Dernière édition par LoopinG le Sam 22 Oct 2011, 17:55, édité 3 fois

LoopinG

Nombre de messages : 100
Prénom : Laurent
Statut : Étudiant en Réseaux et Télécoms
Localisation : L'hôpital de l'armée !
Date d'inscription : 24/03/2011

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  nvs le Sam 15 Oct 2011, 19:38

LoopinG a écrit:j'aimerai savoir comment pouvoir réutiliser la fonction

Code:
const Date * getOneDate (void) ;
/*Cette fonction retourne l'adresse d'une Date différente à chaque appel ou NULL lorsque la fonction n'a plus de date*/

[...] j'aurai voulu savoir si on pouvait remettre cette fonction à zéro pour qu'elle redonne des dates jusqu'à ce que la fonction n'en ait plus à fournir.
la description de la fonction est complète. la fonctionnalité que tu désires n'est pas mentionnée car elle n'existe pas. en un mot, ma réponse à ta question est : non Smile





What a Face

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  smb le Sam 15 Oct 2011, 19:43

LoopinG a écrit:Bonjour tout le monde,

j'aimerai savoir comment pouvoir réutiliser la fonction

Code:
const Date * getOneDate (void) ;
/*Cette fonction retourne l'adresse d'une Date différente à chaque appel ou NULL lorsque la fonction n'a plus de date*/

J'ai bien sur compris sa description et j'aurai voulu savoir si on pouvait remettre cette fonction à zéro pour qu'elle redonne des dates jusqu'à ce que la fonction n'en ait plus à fournir.
Ceci dans le but de tester toutes mes fonctions du TDC1 et 2 dans plusieurs boucle while.(une fonction par boucle).

Voilà merci d'avance pour vos futures commentaires Smile


Dans la même exécution du programme, une fois que la fonction retourne NULL, il n'y a plus moyen de recevoir de sa part une Date.
Par contre, ce que tu peux faire, c'est mettre dans un tableau de Date les dates retournées par la fonction et utiliser ce tableau comme tu veux après.

smb

Nombre de messages : 1035
Age : 64
Prénom : Stéphan
Statut : Don de sang, don de vie!
Localisation : Spy
Date d'inscription : 23/01/2007

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LoopinG le Sam 15 Oct 2011, 20:33

Merci de vos réponses Messieurs les professeurs Smile

En insérant tout dans un tableau cela fonctionne aussi , un très bon conseil !!!

LoopinG

Nombre de messages : 100
Prénom : Laurent
Statut : Étudiant en Réseaux et Télécoms
Localisation : L'hôpital de l'armée !
Date d'inscription : 24/03/2011

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LoopinG le Dim 16 Oct 2011, 11:53

Une autre question :

Code:
printf("Date = %d \n", estBissextile( (getOneUnionInfo(T_DATE)->date).annee ));

Voilà je met ce code dans un bloc et cela fait planter mon programme et je ne comprend pas pourquoi !

PS: toutes les fonctions sont importés et eclipse accepte tout il n'y a aucun soucis à la compilation c'est l'exécution qui plante.

Une idée ?

Merci d'avance !

LoopinG

Nombre de messages : 100
Prénom : Laurent
Statut : Étudiant en Réseaux et Télécoms
Localisation : L'hôpital de l'armée !
Date d'inscription : 24/03/2011

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LSV le Dim 16 Oct 2011, 11:55

LoopinG a écrit:Une autre question :

Code:
printf("Date = %d \n", estBissextile( (getOneUnionInfo(T_DATE)->date).annee ));

Voilà je met ce code dans un bloc et cela fait planter mon programme et je ne comprend pas pourquoi !

PS: toutes les fonctions sont importés et eclipse accepte tout il n'y a aucun soucis à la compilation c'est l'exécution qui plante.

Une idée ?

Merci d'avance !

hmm tu essayes d'afficher un boolean alors que tu voudrais afficher l'année?

LSV

Nombre de messages : 638
Age : 27
Prénom : Jérome
Statut : Diplomé 2013
Localisation : Anderlecht
Date d'inscription : 24/09/2007

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LoopinG le Dim 16 Oct 2011, 11:57

voici le prototype :

BOOL estBissextile( USHORT annee);

donc je pense que ce que j'ai mis est bon ?! non

LoopinG

Nombre de messages : 100
Prénom : Laurent
Statut : Étudiant en Réseaux et Télécoms
Localisation : L'hôpital de l'armée !
Date d'inscription : 24/03/2011

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LSV le Dim 16 Oct 2011, 12:03

Oui bah la fonction renvoit un bool, hors la tu fais un printf %d, entier décimal.

Jsuis pas sur que ca puisse fonctionner, et ca m'étonnerait que tu souhaites faire ca Wink


Code:
printf("Date = %d \n", getOneUnionInfo(T_DATE)->date).annee );

devrait fonctionner (bien que je connaisse pas la fonction) (et que je sois pas sur que de ce que tu souhaites faire Very Happy)

Qu'est ce que ce printf est censé afficher?

LSV

Nombre de messages : 638
Age : 27
Prénom : Jérome
Statut : Diplomé 2013
Localisation : Anderlecht
Date d'inscription : 24/09/2007

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LoopinG le Dim 16 Oct 2011, 12:08

Booléen en C avec l'énumération qui suit, cela revient aussi à dire 0 pour FAUX et 1 pour VRAI me semble-t-il !

Code:
typedef enum
{
    FAUX, VRAI
} BOOL;

et printf %d dans d'autre de mes fonctions est correcte lors de l'envoie d'un BOOL

Réponse au poste ci-dessus :

printf m'affiche si ma date est bissextile ou pas sous la forme Date = 1 ou 0


Dernière édition par LoopinG le Dim 16 Oct 2011, 12:10, édité 1 fois

LoopinG

Nombre de messages : 100
Prénom : Laurent
Statut : Étudiant en Réseaux et Télécoms
Localisation : L'hôpital de l'armée !
Date d'inscription : 24/03/2011

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  nvs le Dim 16 Oct 2011, 12:10

LoopinG a écrit:Une autre question :

Code:
printf("Date = %d \n", estBissextile( (getOneUnionInfo(T_DATE)->date).annee ));

Voilà je met ce code dans un bloc et cela fait planter mon programme et je ne comprend pas pourquoi !
l'argument
Code:
T_DATE
dans l'appel de
Code:
getOneUnionInfo
est suspect :
  • à quel usage le destines-tu ?
  • comment est-il déclaré puis initialisé ?






bom

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LSV le Dim 16 Oct 2011, 12:11

LoopinG a écrit:Booléen en C avec l'énumération qui suit, cela revient aussi à dire 0 pour FAUX et 1 pour VRAI me semble-t-il !

Code:
typedef enum
{
    FAUX, VRAI
} BOOL;

et printf %d dans d'autre de mes fonctions est correcte lors de l'envoie d'un BOOL
Réponse au poste ci-dessus :
printf m'affiche si ma date est bissextile ou pas sous la forme Date = 1 ou 0

Franchement, je sais plus si ca peut marcher ou non Very Happy. Mais ca me parait bizarre. J'aurais fait un "if bissextile printf("bissextile") else ..." Smile

LSV

Nombre de messages : 638
Age : 27
Prénom : Jérome
Statut : Diplomé 2013
Localisation : Anderlecht
Date d'inscription : 24/09/2007

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LoopinG le Dim 16 Oct 2011, 12:18

nvs a écrit:
LoopinG a écrit:Une autre question :

Code:
printf("Date = %d \n", estBissextile( (getOneUnionInfo(T_DATE)->date).annee ));

Voilà je met ce code dans un bloc et cela fait planter mon programme et je ne comprend pas pourquoi !
l'argument
Code:
T_DATE
dans l'appel de
Code:
getOneUnionInfo
est suspect :
  • à quel usage le destines-tu ?
  • comment est-il déclaré puis initialisé ?






bom

à quel usage le destines-tu ? il doit me donner une info de Type DATE non ?

comment est-il déclaré puis initialisé ? là je suis pas !


Dernière édition par LoopinG le Dim 16 Oct 2011, 12:29, édité 1 fois

LoopinG

Nombre de messages : 100
Prénom : Laurent
Statut : Étudiant en Réseaux et Télécoms
Localisation : L'hôpital de l'armée !
Date d'inscription : 24/03/2011

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  nvs le Dim 16 Oct 2011, 12:23

LoopinG a écrit:à quel usage le destines-tu ? il doit me donner une info de Type DATE non ?
non.

LoopinG a écrit:comment est-il déclaré puis initialisé ? là je suis pas !
il y a donc là un point que tu dois éclaircir. t'es-tu déjà frotté à getOneInfo ? elle est du même acabit, mais plus simple que getOneUnionInfo.







flower


Dernière édition par nvs le Dim 16 Oct 2011, 12:24, édité 1 fois

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LoopinG le Dim 16 Oct 2011, 12:24

nvs a écrit:
LoopinG a écrit:à quel usage le destines-tu ? il doit me donner une info de Type DATE non ?
non.

LoopinG a écrit:comment est-il déclaré puis initialisé ? là je suis pas !
il y a donc là un point que tu dois éclaircir. t'es-tu déjà frotté à getOneInfo ? elle est du même acabit, plus simple que getOneUnionInfo.







flower

pas encore j'étais bloquer sur getOneUnionInfo

LoopinG

Nombre de messages : 100
Prénom : Laurent
Statut : Étudiant en Réseaux et Télécoms
Localisation : L'hôpital de l'armée !
Date d'inscription : 24/03/2011

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LoopinG le Dim 16 Oct 2011, 12:55

nvs a écrit:
LoopinG a écrit:Une autre question :

Code:
printf("Date = %d \n", estBissextile( (getOneUnionInfo(T_DATE)->date).annee ));

Voilà je met ce code dans un bloc et cela fait planter mon programme et je ne comprend pas pourquoi !
l'argument
Code:
T_DATE
dans l'appel de
Code:
getOneUnionInfo
est suspect :
  • à quel usage le destines-tu ?
  • comment est-il déclaré puis initialisé ?






bom

Rectification de ce que j'ai dit :p

à quel usage le destines-tu ? Vu que T_DATE c'est une constante de TYPE je vais la mettre dans UINT valeur (ci-dessous), là il y a transtypage me semble-t-il ? après cela je vais aller récupérer l'adresse de ma variable à l'aide de &valeur et boom sa fonctionne ;p

Code:
      
UINT valeur = T_DATE;
printf("Date = %d \n", estBissextile( (getOneUnionInfo(&valeur)->date).annee ));



LoopinG

Nombre de messages : 100
Prénom : Laurent
Statut : Étudiant en Réseaux et Télécoms
Localisation : L'hôpital de l'armée !
Date d'inscription : 24/03/2011

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  nvs le Dim 16 Oct 2011, 13:42

LoopinG a écrit:[...] boom sa fonctionne ;p

Code:
      
UINT valeur = T_DATE;
printf("Date = %d \n", estBissextile( (getOneUnionInfo(&valeur)->date).annee ));
permets-moi d'en douter...






@

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LoopinG le Dim 16 Oct 2011, 13:50

nvs a écrit:
LoopinG a écrit:[...] boom sa fonctionne ;p

Code:
      
UINT valeur = T_DATE;
printf("Date = %d \n", estBissextile( (getOneUnionInfo(&valeur)->date).annee ));
permets-moi d'en douter...






@


Bien pourtant sur eclipse sa me met un résultat regarder par vous même :



Ou j'hallucine complètement ce qui est possible aussi :p

LoopinG

Nombre de messages : 100
Prénom : Laurent
Statut : Étudiant en Réseaux et Télécoms
Localisation : L'hôpital de l'armée !
Date d'inscription : 24/03/2011

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  Florent le Dim 16 Oct 2011, 16:45

Bonjour,

Désolé de poser ma question ici mais je me pose plusieurs questions sur ce TD qui pour moi est un peu flou.

Quand on dit retourner des Dates jusqu'à ce qu'il en aie plus, on fait un tableau de Date et on renvoi tant qu'il y a lire dedans ou je n'ai rien compris?

Aussi comment faire pour utiliser des méthodes des autres projets, il faut inclure les header de quelle façon?

Merci de votre aide et bon dimanche

Florent

Nombre de messages : 93
Prénom : Florent
Date d'inscription : 02/02/2010

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  smb le Dim 16 Oct 2011, 16:54

Florent a écrit:Bonjour,

Désolé de poser ma question ici mais je me pose plusieurs questions sur ce TD qui pour moi est un peu flou.

Quand on dit retourner des Dates jusqu'à ce qu'il en aie plus, on fait un tableau de Date et on renvoi tant qu'il y a lire dedans ou je n'ai rien compris?

Aussi comment faire pour utiliser des méthodes des autres projets, il faut inclure les header de quelle façon?

Merci de votre aide et bon dimanche

Toutes ces questions justifient bien l'importance d'être présent au laboratoire et d'y poser les questions nécessaires à la bonne compréhension et réalisation des TDs.
Vos professeurs se feront un plaisir d'y répondre !

smb

Nombre de messages : 1035
Age : 64
Prénom : Stéphan
Statut : Don de sang, don de vie!
Localisation : Spy
Date d'inscription : 23/01/2007

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  Florent le Dim 16 Oct 2011, 17:56

smb a écrit:
Florent a écrit:Bonjour,

Désolé de poser ma question ici mais je me pose plusieurs questions sur ce TD qui pour moi est un peu flou.

Quand on dit retourner des Dates jusqu'à ce qu'il en aie plus, on fait un tableau de Date et on renvoi tant qu'il y a lire dedans ou je n'ai rien compris?

Aussi comment faire pour utiliser des méthodes des autres projets, il faut inclure les header de quelle façon?

Merci de votre aide et bon dimanche

Toutes ces questions justifient bien l'importance d'être présent au laboratoire et d'y poser les questions nécessaires à la bonne compréhension et réalisation des TDs.
Vos professeurs se feront un plaisir d'y répondre !

Je vous remercie pour cette information, en effet je suis bel et bien présent à tous les labos mais il faut croire qu'avec 2h par semaine le professeur aie du mal à se couper en 18 pour répondre à toutes les questions, je vais donc me débrouiller par moi même et éviter de prendre encore plus du retard sur le labo prochain.

Florent

Nombre de messages : 93
Prénom : Florent
Date d'inscription : 02/02/2010

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  nvs le Dim 16 Oct 2011, 20:21

Florent a écrit:Quand on dit retourner des Dates jusqu'à ce qu'il en aie plus, on fait un tableau de Date et on renvoi tant qu'il y a lire dedans ou je n'ai rien compris?
tu n'as rien à renvoyer, ce sont les fonctions de la bibliothèque qui renvoient, toi tu réceptionnes !







pale

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LoopinG le Mar 18 Oct 2011, 20:18

Voilà j'ai un problème avec le code qui suit et qui fait planter eclipse Evil or Very Mad J'aimerai savoir ou est mon erreur car moi je ne là vois décidément pas donc si qq un pouvait m'aider, une vue extérieur sa peut toujours servir Wink

Code:

int i=0, indTailleUET=0;
const UINT * uEntier;
UINT uEntierTab[50];

   while(uEntier = getOneUINT()){
      uEntierTab[indTailleUET]= *uEntier;
      indTailleUET++;
   }


   i=0;
   while(i<indTailleUET){
      if ( estPremier(uEntierTab[i]) == 1 ){
         printf("%u est premier \n", uEntierTab[i] );
         }else{
         printf("%u n'est pas premier \n", uEntierTab[i]);
         }
      i++;
   }


Amicalement Laurent.

LoopinG

Nombre de messages : 100
Prénom : Laurent
Statut : Étudiant en Réseaux et Télécoms
Localisation : L'hôpital de l'armée !
Date d'inscription : 24/03/2011

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  smb le Mar 18 Oct 2011, 21:49

LoopinG a écrit:Voilà j'ai un problème avec le code qui suit et qui fait planter eclipse Evil or Very Mad J'aimerai savoir ou est mon erreur car moi je ne là vois décidément pas donc si qq un pouvait m'aider, une vue extérieur sa peut toujours servir Wink
(...)
Amicalement Laurent.

Tu veux dire quoi par "fait planter eclipse" ?

Ne serait-ce pas plutôt : mon programme tourne pendant un temps qui met ma patience à bout ?

smb

Nombre de messages : 1035
Age : 64
Prénom : Stéphan
Statut : Don de sang, don de vie!
Localisation : Spy
Date d'inscription : 23/01/2007

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  LoopinG le Mar 18 Oct 2011, 22:10

En faite il tourne sans arrêter mais au bout qq sec j'ai "eclipse a cessé de fonctionner" par contre quand je stop il m'affiche d'autre test qui suivait ces instructions (qui tournent en boucle apparemment)

Mais ce que je comprend pas c'est qu'il y a pourtant une limite qui ne sera pas dépasser (on ne dépassera pas la taille du tableau)

LoopinG

Nombre de messages : 100
Prénom : Laurent
Statut : Étudiant en Réseaux et Télécoms
Localisation : L'hôpital de l'armée !
Date d'inscription : 24/03/2011

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  smb le Mar 18 Oct 2011, 22:44

LoopinG a écrit:En faite il tourne sans arrêter mais au bout qq sec j'ai "eclipse a cessé de fonctionner" par contre quand je stop il m'affiche d'autre test qui suivait ces instructions (qui tournent en boucle apparemment)

Mais ce que je comprend pas c'est qu'il y a pourtant une limite qui ne sera pas dépasser (on ne dépassera pas la taille du tableau)

Nous n'avons pas le code de estPremier, mais bon, un debugging semble s'imposer !

smb

Nombre de messages : 1035
Age : 64
Prénom : Stéphan
Statut : Don de sang, don de vie!
Localisation : Spy
Date d'inscription : 23/01/2007

Revenir en haut Aller en bas

resolu Re: [C] TD3 Exo8

Message  Contenu sponsorisé Aujourd'hui à 14:29


Contenu sponsorisé


Revenir en haut Aller en bas

Page 1 sur 2 1, 2  Suivant

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum