Programmer en C
Zacko47
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
[Dal] Messages postés 6205 Date d'inscription Statut Contributeur Dernière intervention -
[Dal] Messages postés 6205 Date d'inscription Statut Contributeur Dernière intervention -
Besoin d'aides svp
écrire un programme en C permettant à un élève de terminal de vérifier les résultats de l'arithmétique dans un nombre complexe où la partie réel et la partie imaginaire sont des entiers.
Ma question est de savoir si je dois utiliser les nombres où appliquer juste les propriétés des nombres complexes sur l'addition, le produit, la soustraction.
Comme on sait que z=a+ ib
Si a=0 alors z est dit imaginaire
Si b=0 alors z est dit réel
Soit j'applique dans mon programme comme en haut où dois-je utiliser les exemples arithmétiques. Comme pour la somme je pose ( 5+2i)+(-2+i) je calcule puis afficher le résultat dans mon programme.
écrire un programme en C permettant à un élève de terminal de vérifier les résultats de l'arithmétique dans un nombre complexe où la partie réel et la partie imaginaire sont des entiers.
Ma question est de savoir si je dois utiliser les nombres où appliquer juste les propriétés des nombres complexes sur l'addition, le produit, la soustraction.
Comme on sait que z=a+ ib
Si a=0 alors z est dit imaginaire
Si b=0 alors z est dit réel
Soit j'applique dans mon programme comme en haut où dois-je utiliser les exemples arithmétiques. Comme pour la somme je pose ( 5+2i)+(-2+i) je calcule puis afficher le résultat dans mon programme.
A voir également:
- Programmer en C
- Programmer sms - Guide
- Programmer mail gmail - Guide
- Programmer en basic sous windows 10 - Télécharger - Édition & Programmation
- Mettre en veille un programme - Guide
- Apprendre a programmer - Guide
2 réponses
Bonjour,
Vous avez z1 et z2, deux nombres complexes
Par ex: vous voulez que votre programme fasse z1+z2
Je pense que le mieux et le plus facile est de décomposer partie réel et partie imaginaire.. et de faire:
Re(z3)= Re(z1)+Re(z2)
Im(z3)=Im(z1)+Im(z2)
z3=Re(z3)+i*Im(z3)
Faites néanmoins attention lors de la multiplication!! car:
Re(z3)=Re(z1)*Re(z2)-Im(z1)*Im(z2)
Im(z3)=Re(z1)*Im(z2)+Re(z2)*Im(z1)
Il me semble qu'il existe des fonction Re et Im en C
Vous avez z1 et z2, deux nombres complexes
Par ex: vous voulez que votre programme fasse z1+z2
Je pense que le mieux et le plus facile est de décomposer partie réel et partie imaginaire.. et de faire:
Re(z3)= Re(z1)+Re(z2)
Im(z3)=Im(z1)+Im(z2)
z3=Re(z3)+i*Im(z3)
Faites néanmoins attention lors de la multiplication!! car:
Re(z3)=Re(z1)*Re(z2)-Im(z1)*Im(z2)
Im(z3)=Re(z1)*Im(z2)+Re(z2)*Im(z1)
Il me semble qu'il existe des fonction Re et Im en C
Salut Zacko47,
Depuis la révision du standard C99, le langage C supporte les nombres complexes.
https://en.cppreference.com/w/c/numeric/complex
Le compilateur gcc comprend ce support et propose l'entête
Tu as des exemples sur la page cppreference.com précitée, ainsi que sur ce post sur SO :
https://stackoverflow.com/questions/6418807/how-to-work-with-complex-numbers-in-c
Je ne suis pas matheux, alors je te laisse apprécier si tout cela t'est utile :-)
Dal
Depuis la révision du standard C99, le langage C supporte les nombres complexes.
https://en.cppreference.com/w/c/numeric/complex
Le compilateur gcc comprend ce support et propose l'entête
<complex.h>qui donne accès aux types
float complex,
double complexet
long double complex, à des macros et fonctions permettant de les manipuler, et tu peux utiliser, avec ces nombres, les opérateurs standard +, -, *, /.
Tu as des exemples sur la page cppreference.com précitée, ainsi que sur ce post sur SO :
https://stackoverflow.com/questions/6418807/how-to-work-with-complex-numbers-in-c
Je ne suis pas matheux, alors je te laisse apprécier si tout cela t'est utile :-)
Dal