C++Talk.NET Forum Index C++Talk.NET
C++ language newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

fonction printLn() affiche tab de pointeur / prog objet

 
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (French)
View previous topic :: View next topic  
Author Message
stephane
Guest





PostPosted: Wed Feb 09, 2005 10:04 pm    Post subject: fonction printLn() affiche tab de pointeur / prog objet Reply with quote



Bonjour,

Je dois faire la méthode printLn de la classe Thoraire.

voici ce que j'ai fait: (mes deux classes sont au-dessous)

void Thoraire::printLn() const
{
cout<
for(int i=0;i
m_cases[i]->printLn() ;
}
Est-ce que cela vous semble juste ou y a-t-il des abérations?

(Je dois déclarer les chaînesde caractère de cette manière je ne peux pas
faire autrement, et je ne peux pas utiliser enum pour déclarer les
constantes non plus)


# ifndef CASE_H
# define CASE_H
#include <iostream>
#include <iomanip>
#include <cstring>
using namespace std ;

const int Clundi = 1 ;
const int Cmardi = 2 ;
const int Cmercredi = 3 ;
const int Cjeudi = 4 ;
const int Cvendredi = 5 ;
const int Csamedi = 6 ;
const int Cdimanche = 7 ;

class Tcase{

public :

Tcase (int numSemaine, int numJour, double heureDebut, double duree,char
matiere[], char classe[]= " ", char salle[]= " ") ;

int getNumSemaine() const ;
double getDuree() const ;
void printLn() const ;

private :

//attributs obligatoires
int m_numSemaine ; //1..53
int m_numJour ; //1..7
double m_heureDebut ; //13h30 = 13.5
double m_duree ; //2h45 = 2.75
char m_matiere[10] ; //p ex. prog7



//attributs optionnels
char m_classe[10] ; //p. ex. 3IG-EE
char m_salle[10] ; //p. ex A46A

}
#endif

# ifndef HORAIRE_H
# define HORAIRE_H
# include <iostream>
# include <cstring>

using namespace std ;
#include « case.h »

class TenseignantError{} ; // l'enseignant ne correspond pas

class Toverflow{} ; //dépassement de capacité
//Nombre maximum de cases horaires pour un enseignant

const int CcasesMax = 1000 ;
class Thoraire{

public :

//crée un horaire vide
Thoraire (const char nomEnseignant[]) ;

//ajout d'une case horaire

void ajouteCase (Tcase* caseHor) throw (Toverflow) ;

//calcule de la charge horaire totale

double chargeHoraire() const ;

//retourne un extrait de l'horaire
//ne contient que les cases de la semaines spécifiée
//retourne un horaire vide si la semaine n'existe pas
Thoraire horaireHebdomadaire (int numSem) const ;



/*

Crée un nouvel horaire résultat de la fusion de deux horaires
Lève une exception de la classe TenseignantError si les horaires
N'ont pas le même nom d'enseignant
Lève une exception de la classe Toverflow si la fusion entraîne
Un dépassement de capacité (> CcasesMax) */

Thoraire operator+ (const Thoraire & hor) const throw
(TenseignantError,Toverflow) ;
Void printLn() ;

Private :

Char m_nomEnseignant [30] ; // obligatoire
Tcase* m_cases[CcasesMax] ;
Int m_nbCases ;
} ;
#endif


Back to top
Alexandre
Guest





PostPosted: Thu Feb 10, 2005 2:11 pm    Post subject: Re: fonction printLn() affiche tab de pointeur / prog objet Reply with quote



Quote:
Je dois faire la méthode printLn de la classe Thoraire.

voici ce que j'ai fait: (mes deux classes sont au-dessous)

void Thoraire::printLn() const
{
cout<
for(int i=0;i
m_cases[i]->printLn() ;
}
Est-ce que cela vous semble juste ou y a-t-il des abérations?

si tu es sur que m_cases[i] est valide, pas de souci. S'il peut arriver
qu'il soit nul, alors un petit test avant serait le bienvenu...

Quote:
(Je dois déclarer les chaînesde caractère de cette manière je ne peux pas
faire autrement, et je ne peux pas utiliser enum pour déclarer les
constantes non plus)

ça sent le sujet de TD ça ;-)




Back to top
stephane
Guest





PostPosted: Mon Feb 14, 2005 6:14 pm    Post subject: Re: fonction printLn() affiche tab de pointeur / prog objet Reply with quote



TD c'est Travail de Diplôme? en fait c'est pas pour un travail de diplôme
mais c'est pour préparer un exa...
Tu veux dire un test comme ça ?
if( m_nbCases = = 0)

cout<<"message" <


"Alexandre" 420c857b$0$30623$636a15ce (AT) news (DOT) free.fr...
Quote:
Je dois faire la méthode printLn de la classe Thoraire.

voici ce que j'ai fait: (mes deux classes sont au-dessous)

void Thoraire::printLn() const
{
cout<
for(int i=0;i
m_cases[i]->printLn() ;
}
Est-ce que cela vous semble juste ou y a-t-il des abérations?

si tu es sur que m_cases[i] est valide, pas de souci. S'il peut arriver
qu'il soit nul, alors un petit test avant serait le bienvenu...

(Je dois déclarer les chaînesde caractère de cette manière je ne peux
pas
faire autrement, et je ne peux pas utiliser enum pour déclarer les
constantes non plus)

ça sent le sujet de TD ça ;-)






Back to top
Display posts from previous:   
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (French) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.