begin process at 2010 02 10 05:49:57
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Maths & Algorithmes

 > POLYNOMES, ZEROS ET EXPANSIONS

POLYNOMES, ZEROS ET EXPANSIONS


 Information sur la source

Note :
Aucune note
Catégorie :Maths & Algorithmes Classé sous :polynome, zero, expansion, precision, template Niveau :Initié Date de création :06/09/2007 Date de mise à jour :06/09/2007 16:49:22 Vu / téléchargé :2 450 / 99

Auteur : Samaths

Ecrire un message privé
Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

 Description

Ces deux petites "librairies" m'ont été très utiles durant un gros projet: il s'agissait de déterminer le plus petit zero d'un polynom dans un interval donné. Le problème est que la précision "double" ne suffisait pas pour le calcul des coefficients de ce polynômes.

les fichiers sources contiennent donc:

***
Un fichier "polynom.h", qui traite en tant que template les polynomes. Vous pouvez faire des polynômes de ce que vous voulez, double, int, ... et surtout de ce qui suit :-) . Les différents opérateurs ont été défini (+,-,*,%,=) et permettent de travailler de manière intuitive.
Mais le gros plus de ce fichier est la fonction appelée zeroMin: vous lui donnez un polynome à coefficients réels (sans racine multiple) DE N'IMPORTE QUEL DEGRE, un intervalle, et il vous donne le plus petit 0 du polynome dans cet intervalle (s'il y en a un). Cette fonction utilise de manière subtile la suite de Sturm du polynome (chercher sur google si vous voulez en savoir plus), et à partir de celà il n'est pas difficile de trouver tous les zeros...

***
Deux fichiers "Expansion.h" et "Expansion.cpp". Ce sont des fichiers qui contiennent la description d'un nouveau type pour représenter un réel sur une machine, les expansions. A partir des doubles, vous pouvez faire toutes les opératios +,- et * que vous voulez, vous gardez la précision machine! De plus, la précision est adaptative, vous en avez plus seulement quand vous en avez besoin. C'est une excellent alternative au "long double" et "long long double", dont le désavantage est qu'il n'y a pas de division... Si les opérations +,- et * vous suffisent, préférez les expansions!
Tous les détails sont donnés sur un lien cité dans le .h


 Conclusion

* Si j'ai le temps, je vais finir la fonction de compression des expansions, il y a un bug pour l'instant dedans (mis en commentaires)
* Il faudrait aussi refaire une beauté à la division polynomiale

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

06 septembre 2007 16:49:22 :
* Petite correction d'une phrase qui ne voulait rien dire dans le descriptif

 Sources de la même categorie

Source avec Zip OPERATION SUR LES MATRICES CARREES AVEC CLASSE GENERIQUE par chouhad
Source avec une capture OPÉRATIONS SUR MATRICES C++ par Minilogus
[DEV-C++] CALCUL DE LA RACINE CARRÉE D'UN RÉEL par Jhep
PROGRAMME QUI CALCUL LE PPCM ET LE PGCD par AnoSantino
EVALUER UNE EXPRESSION MATHÉMATIQUE par begueradj

 Sources en rapport avec celle ci

SMART POINTEUR À COMPTEUR DE RÉFÉRENCE par nirgal76
POINTEUR INTELLIGENT par snpier wolf
Source avec Zip CLASS SIMPLE POUR LIRE DES FICHIER *.INI par lglandeur
Source avec Zip CLASS MATRICE AVEC TEMPLATE par CharSnipeur
Source avec Zip TEMPLATE DE VECTEUR AVEC TIRAGE ALEATOIRE (C++) par Sunglasses

Commentaires et avis

Aucun commentaire pour le moment.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

[C++] precision [ par kikiops ] comment faire pour avoir des resultats float avec deux decimalesj'vous donne un ch'tit exemple , ca sera plus simple pour m'faire comprendrefloat a = TEMPLATE [ par gaya ] Salut,Est-ce que quelqu'un pourrait me définir ce que signifie le mot "template" en ce qui concerne le C++ ?Un petit exemple serait le bienvenu, merci Erreur Template [ par yodasoft ] Bonjour , je suis nouveau sur ce site:J'ai une erreur sous Visual C++Il me met l'erreur suivante :guichet.obj : error LNK2001: unresolved external sym Liste chainée en C++ sans STL (ni vector ni template) [ par Tamahome ] Bonjour,je cherche un exemple de liste chainée (sans STL: ni vector ni template) enC++ (pas en C) permettant de chainer des objets héterogenes (par ex template [ par dam1234 ] G un probleme avec une methode de classe declaree en template. J'aurai besoin de savoir comment est ce que l'on fait pour connaitre quel a été le type template? [ par payen ] Salut a tous,je programme actuellement une bibli de traitement d'images en C++, et j'ai un p'tit souci. En fait, j'ai cree une classe image qui contie template et instanciation [ par payen ] salut salut,j'ai cree une template class (template <class T> class CIM)avec comme attribut un tableau dont le type est instancie a la creation d fonction templates amies [ par littlefl ] Ma question peu paraître simple (et peut-être qu'elle l'est) mais je n'arrive pas à déclarer une fonction template amie d'une classe. La raison, c'ets classe derivee de template [ par payen ] Salut a tous,juste une petite question sur les template et les classes derivees ... j'ai donc une classe template declarre comme suit: erreur de template pdt la compilation help [ par loicus ] voilaquand je compil mon programe j'ai cette erreur : d:\programes\programation\visualc++\vc98\include\math.h(514) : error C2894: templates cannot be


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,952 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales