Erreur d'appli executable

Erreur d'appli executable - C++ - Programmation

Marsh Posté le 25-05-2005 à 15:16:11    

Bonjour,
 
Je souhaite exécuter mon main
et j'ai un beau message d'erreur me disant:
l'instruction à "0x77f481bd" emploie l'adresse mémoire "0x3fee4ba9".
La mémoire ne peut pas etre written.
 
D'où vient le pb?apparemment de la mémoire
 
Merci d'avance car là cela bloque
 
Morgan

Reply

Marsh Posté le 25-05-2005 à 15:16:11   

Reply

Marsh Posté le 25-05-2005 à 15:17:04    

de ton code.

Reply

Marsh Posté le 25-05-2005 à 15:18:23    

je veux bien le croire
;-)

Reply

Marsh Posté le 25-05-2005 à 15:20:44    

Est ce que cela peut etre cela:
theMatrice=simulation_taux(Maturity,FloatingFrequency,NbOfPaths);
 
avec thematric=vector
et simulation_taux retourne un vecteur

Reply

Marsh Posté le 25-05-2005 à 15:27:14    

C'est possible.
 
Mais, si tu veux vraiment de l'aide, tu ne devrais pas nous donner les informations au compte goûte.

Reply

Marsh Posté le 25-05-2005 à 15:30:53    

main:

Code :
  1. vector<double> theMatrice(NbOfPaths*FloatingFrequency*Maturity);
  2. vector<double>::iterator Iter1;
  3. theMatrice=simulation_taux(Maturity,FloatingFrequency,NbOfPaths);
  4. //*********************************************************
  5. for ( Iter1 = theMatrice.begin( ) ; Iter1 != theMatrice.end( ) ; Iter1++ )
  6.     cout << *Iter1 << " ";


 
simulation_taux:

Code :
  1. vector<double> simulation_taux(const int maturity,const int FloatingFrequency,const long NbOfPaths)
  2. {
  3. //term 1
  4. double term1;
  5. //term2
  6. double term2;
  7. //term variance
  8. double VV;
  9. double t_depart;
  10. double t_fin;
  11. double thisGaussian;
  12. long dl=NbOfPaths;
  13. int dc=maturity*FloatingFrequency;
  14. vector<double> matrice_taux(dc*dl);
  15. vector<double> matrice_ZC(dc*dl);
  16. int indexation_vecteur=0;
  17. int count=0;
  18. for (int i=1;i<=dl;i++)
  19. {
  20.  matrice_taux[(i-1)*dc+count]=r0;
  21.  matrice_ZC[(i-1)*dc+count]=1;
  22.  //dc nb de périodes
  23.  for (int j=1;j<=dc;j++)
  24.  {
  25.   t_depart=static_cast<double>(j-1)/static_cast<double>(dc);
  26.   t_fin=static_cast<double>(j)/static_cast<double>(dc);
  27.   //term 1
  28.   term1=DerministTerm1(a,t_depart,t_fin);
  29.   //term2
  30.   term2=DerministTerm2(a,b,t_depart,t_fin);
  31.   //écarttype  
  32.   VV=sqrt(VarianceVasicek(a,vol,t_depart,t_fin));
  33.   indexation_vecteur=(i-1)*dc+j+count;
  34.   //simu normale
  35.   thisGaussian=GetOneGaussianByBoxMuller();
  36.   //rt=
  37.   matrice_taux[indexation_vecteur]=matrice_taux[indexation_vecteur-1]*term1+term2+VV*thisGaussian;
  38.   //B(t,T)=
  39.   matrice_ZC[indexation_vecteur]=A(a,b,vol,t_fin,maturity)*exp(-matrice_taux[indexation_vecteur]*G(a,vol,t_fin,maturity));
  40.  };
  41.  count=count+1;
  42. };
  43. return matrice_ZC;
  44. };


Reply

Marsh Posté le 25-05-2005 à 15:33:48    

tu peux toujours courir avec ton code, il est imbittable et pas compilable.

Reply

Marsh Posté le 25-05-2005 à 15:36:41    

si il compile chez moi  
mais c'est vrai qu'il y a mieux sur la compréhension

Reply

Marsh Posté le 25-05-2005 à 15:37:10    

ah ben tant mieux s'il compile chez toi.

Reply

Marsh Posté le 25-05-2005 à 15:37:30    

ou alors autre question peut-on dire Vecteur1=Vecteur2?
 

Reply

Marsh Posté le 25-05-2005 à 15:37:30   

Reply

Marsh Posté le 25-05-2005 à 15:38:34    

tu comptes nous faire combien de topics au fait ?

Reply

Marsh Posté le 25-05-2005 à 15:40:28    

dans ce cas là
c pas grave je me débrouillerai autrement
 
merci quand même.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed