/*

  __                                       __
 /\ \                 __                  /\ \__  __
 \_\ \     __   _ __ /\_\  __  __     __  \ \ ,_\/\_\    ___     ___
 /'_` \  /'__`\/\`'__\/\ \/\ \/\ \  /'__`\ \ \ \/\/\ \  / __`\ /' _ `\
/\ \L\ \/\  __/\ \ \/ \ \ \ \ \_/ |/\ \L\.\_\ \ \_\ \ \/\ \L\ \/\ \/\ \
\ \___,_\ \____\\ \_\  \ \_\ \___/ \ \__/.\_\\ \__\\ \_\ \____/\ \_\ \_\
 \/__,_ /\/____/ \/_/   \/_/\/__/   \/__/\/_/ \/__/ \/_/\/___/  \/_/\/_/


AUTEUR	: Aymeric & Samira
GROUPE	: 5 (RT)
DATE	: 16/05/2003
FICHIER	: derivation.h

*/


#ifndef DERIVATION_H
#define DERIVATION_H

/*
 ---------------------------------------------------------------
|		Declaration de la structure noeud		|
 ---------------------------------------------------------------
*/

struct noeud
{
	char type;
	union
	{
		double val;
		char var;
		char ope;
	};
	noeud * fg, * fd;
};


/*
 ---------------------------------------------------------------
|		Declaration de la classe Arbre			|
 ---------------------------------------------------------------
*/

class Arbre
{
	public:
		noeud * racine;
		Arbre(noeud*);
		~Arbre();
		void affiche();
		void affiche_noeud(noeud*);
		void liberearbre(noeud*);
};

#endif
