begin process at 2012 05 30 04:00:57
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Algorithme

 > 

Maths

 > 

Maths en C++ (Dev cpp)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Maths en C++ (Dev cpp)

mardi 20 juillet 2010 à 16:51:03 | Maths en C++ (Dev cpp)

sokpassy85

Bonjour,

Je suis confronté depuis hier à un problème pour manipuler des expressions mathématiques.

J'obtiens un résultat erroné quand j'exécute mon programme. Dans cette expression ci-dessous seule la t1(n'est pas initialisée donc elle n'est pas affectée à aucune valeur), qui est une variable inconnue. Je m'attendais à obtenir un résultat pour "L'expression de H1(f): NA" à la place j'obtiens une valeur numérique.

Savez vous pourquoi? Je travaille sous Dev cpp.


x1 = (-2)/(b*b)*((t1-(1+(-2)*2*g)*fsupv))*((t1-(1+(-2)*2*g)*fsupv));

std::cout <<" L'expression de H1(f) : " << exp(x1) << std::endl;
mardi 20 juillet 2010 à 21:31:40 | Re : Maths en C++ (Dev cpp)

CptPingu

Administrateur CodeS-SourceS
Une valeur non initialisée prend la valeur de l'espace mémoire ou elle se trouve. Une valeur non initialisée à donc une valeur indéterminée (Pour vulgariser, elle vaut "aléatoire").

________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio

Merci d'utiliser Réponse acceptée si un post répond à votre question
mardi 20 juillet 2010 à 22:35:12 | Re : Maths en C++ (Dev cpp)

sokpassy85

Salut,

D'abord merci. Au faite je ne veux pas l'initialiser. Cette même variable (t1) est utilisée par une autre expression (E(f)). Je dois calculer l'intégrale du produit E(f).H1(f). Je voudrais que ces fonctions gardent leur formes littéraires pour que je puisse calculer l'intégrale.

Comment je dois la déclarer pour éviter ces genres problèmes ou bien c'est impossible?

Merci d'avance.
mercredi 21 juillet 2010 à 10:05:20 | Re : Maths en C++ (Dev cpp)

CptPingu

Administrateur CodeS-SourceS
Je n'ai pas tout compris.

Tout ce que je peux te dire, c'est qu'une variable doit forcément être initialisé avant son utilisation, sinon le comportement de ton programme sera indéterminé.

Si tu souhaites ne calculer qu'une partie, alors tu n'as pas le choix, il te faut passer par ce que l'on appelle un foncteur.
Tu commences par remplir toutes tes variables: (b, g et fsupv). Une fois enregistré, il ne te reste qu'a donner t1.

Je te donne un exemple:
Code C/C++ :
#include <iostream>

class Integral
{
public:
  Integral(double b, double g, double fsupv)
    : _b(b), _g(g), _fsupv(fsupv)
  {
  }

  double operator()(double t1)
  {
    return (-2) / (_b * _b) *
      ((t1 - (1 + (-2) * 2 * _g) * _fsupv)) *
      ((t1 - (1 + (-2) * 2 * _g) * _fsupv));
  }
private:
  const double	_b;
  const double	_g;
  const double	_fsupv;
};

int main()
{
  Integral integral(5, 78, 45);

  double x1 = integral(8);
  std::cout << x1 << std::endl;

  std::cout << integral(10) << std::endl;
  std::cout << integral(789) << std::endl;

  return 0;
}


________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio

Merci d'utiliser Réponse acceptée si un post répond à votre question
mercredi 21 juillet 2010 à 13:14:50 | Re : Maths en C++ (Dev cpp)

sokpassy85

Bonjour,

Au faite j'ai deux expressions: H(f) et E(f).

H(f) = exp((-2)/(b*b)*((t1-(1+(-2)*2*g)*fsupv))*((t1-(1+(-2)*2*g)*fsupv)))

E(f) = exp((-2)/(b1*b1)*(t1-fsupv)).

Je veux calculer l'intégral du produit de ces deux fonctions avec t1 comme variable. Les valeurs des variables b, b1 et fsupv sont connues. J'ai fait un changement de variables:
x1 = (-2)/(b*b)*((t1-(1+(-2)*2*g)*fsupv))*((t1-(1+(-2)*2*g)*fsupv))
z = (-2)/(b1*b1)*(t1-fsupv) par ce que je n'arrive pas à les écrire comme ci dessus. J'ai pensé à faire un développement limité de la fonction exponentielle ensuite faire le produit et ensuite calculer la primitive. Je vais perdre de l'information en faisant ainsi. Donc je souhaiterai utiliser les fonctions comme ci dessus.

Merci,

Ibrahima

mercredi 21 juillet 2010 à 14:32:23 | Re : Maths en C++ (Dev cpp)

CptPingu

Administrateur CodeS-SourceS
Je ne comprends absolument pas ce que tu veux. Il faut que tu sois plus clair.

________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio

Merci d'utiliser Réponse acceptée si un post répond à votre question
mercredi 21 juillet 2010 à 15:17:50 | Re : Maths en C++ (Dev cpp)

sokpassy85

Salut,


J'ai deux fonctions exponentielles (voir sur post précédent) qui utilisent la même variable t1. Je souhaite calculer l'intégral du produit de ces deux fonctions. Je crois je vais y arriver. J'ai décidé de faire le calcul manuellement(produit de deux exponentielles ensuite je calcule la primitive). Je crois ça va marcher. Je te tiendrais courant.

Merci,

Ibrahima.


Cette discussion est classée dans : t1, expression, maths, dev, cpp


Répondre à ce message

Sujets en rapport avec ce message

installation dev Cpp [ par ludaavics ] Je suis ptêt pô doué, mais j'ai fait l'erreur d'installer eux fois dev cpp( il prévienne en plus).C'est simple : j'ai d'abord installé une première fo graphisme ms-dos en c avec dev-cpp [ par surfeurnet ] Salut,Je suis débutant en c et je voudrai faire des graphiques sous ms-dos avec dev-cpp comment puis-je faire (j'ai entendue parlez de l'utilisation d réponse compilateur dev-cpp [ par surfeurnet ] Dev-cpp m'envoit 20 mesages d'erreur du type :[Linker error] undefined reference to `WSAStartup@8'Quelqu'un pourrait-il m'indiquer ce que cela signif generation nombre aleatoire sous dev cpp [ par dionysos ] Bonjour,En c, sous dev cpp, comment generer des nombre de façon aleatoire (entiers) ?Quelle(s) bibliotheque(s)?Quelle(s) fonction(s)?J'ai pensé à rand probléme dev cpp [ par alphaone ] Avec mon compilateur dev cpp je ne sais pas comment on fais des programme dos. Créer une DLL avec Dev-Cpp [ par ennixo ] Coucou, je n'y connais absolument rien en C++ mais j'ai besoin de créer une DLL que je pourrai appeller en VB par la suite.si quelqu'un peut soit m'ex Pb dev-cpp et winxp [ par titizebioutifoul ] Depuis peu de temps je suis passer à Win xp et j'ai donc réinstaller dev-c++. Mais je ne trouve pas d'autoexec.bat à modifier et lorsque je compile j' Problème compilation : Permission denied [ par kojiro2 ] C la premiere fois que je vois ce type d'erreur.J'utilise Dev-cpp 4.9.Voila ce que me dit Dev-cpp lorsque je compile:This is a linker error! It's a ge Faire du graphique avec Dev cpp [ par kojiro2 ] Salut, je spouhaite faire des programmes intégrant un peu plus de graphisme(carré ligne...). Je sais qu'il existe une librairie spéciale avec BORLAND kernel32.lib sous dev-cpp??? [ par vychnou ] Bonjour à tous.(au secours! J'ai un petit problème :Je n'ai pas la moindre trace de kernel32.lib sur mon ordi :)Quelqun sait-il ou je pourrait me proc


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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,796 sec (3)

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