cs_edlain
Messages postés21Date d'inscriptionlundi 7 mai 2007StatutMembreDernière intervention15 août 2008
-
11 juil. 2008 à 09:46
yvessimon
Messages postés637Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention 9 janvier 2017
-
18 août 2008 à 08:43
Bonjour à tous,
j'ai un souci sur mon algorithme qui fait des calculs. En effet, quand j'essaie d'éléver un nombre à la puissance d'un autre le message d'erreur suivant apparait: "Type pointer requis".
Voici un exemple:
je veus faire par exemple B à la puissance C avec B,A et C de type extended. (B=15.5 et C=5.1235)
Donc je fais A:=B^C mais le message d'erreur sort toujous et le curseur se met après le C.
cs_edlain
Messages postés21Date d'inscriptionlundi 7 mai 2007StatutMembreDernière intervention15 août 2008 12 juil. 2008 à 11:48
Bonjour ,
excusez moi du derrangement que je vous cause depuis le debut de cette semaine; En fait j'ai le message d'erreur suivant lorsque je compile mon programme: "opération en virgule flottante incorrecte".
et voici un bout de mon programme:
var
r, some,some1,some2,lambda:extended;
begin
.......
............
r:=sqrt((power(some,some2)+(sqr(some1))+sqr(some2))));
..................
lambda:=arctan(some1/some2);
..............
end;
le problème se situe au niveau de l'expression du 'r'. (NB: some, some1, some2 renvoient plus haut dans mes calcules des nombres à virgules). Mais lambda et les autres n'ont aucun problème.
yvessimon
Messages postés637Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention 9 janvier 2017 15 juil. 2008 à 09:14
Bonjour,
Effectivement un test est nécessaire pour les nombres négatif.
Ce test dépend de ton calcul.
Avec sqrt(ABS(x)) tu es sûr d'avoir un resultat. Par contre est-ce logique pour ton calcul ?
Un test est nécessaire pour chaque division par zéro .
pour x^y un test est necessaire pour x<0 et y décimal
cs_edlain
Messages postés21Date d'inscriptionlundi 7 mai 2007StatutMembreDernière intervention15 août 2008 15 juil. 2008 à 10:26
Bonjour Yvessimon,
Effectivement pour mes calculs je ne peux pas utiliser sqrt(ABS(X)) car ici je prend la valeur absolue de X alors que j'ai des coordonnées négatives; ce qui fait que si je prend abs(x) je fausse tous mes calculs.
cs_edlain
Messages postés21Date d'inscriptionlundi 7 mai 2007StatutMembreDernière intervention15 août 2008 15 août 2008 à 18:36
Bonjour à tous,
Tout d'abord, bonne fête d'assomption à tous. Je voudrais s'il vous plait savoir comment affiche t-on une partie réelle et une partie imaginaire d'un complexe en delphi?
Exemple: si j'ai le complexe z = 5 - 2i
dans un premier temps je voudrais afficher la partie réelle donc a= 5 et dans un second temps, la partie réelle b= -2
yvessimon
Messages postés637Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention 9 janvier 2017 18 août 2008 à 08:43
Bonjour,
utilise les varians
regarde dans l'aide de delphi :
function VarComplexCreate(const AReal, AImaginary: Double): Variant; overload;
Tu peux faire des additions ....
si non tu rées une table réelle de dimention 2 . Le 1er élément est la partie réelle l'autre l'imaginaire.
Puis créer les différente fonctions d'atdition multiplication ....
si non voir des exemples sur le site