Forum

Catégorie : Programmes
Forum : Les programmes des internautes
Vues : 8439
Réponses : 52
Type : discussion
Etat : réponses autorisées

Programme COMPLEXES - Page 1 / 3

Revenge Mania le 16/05/2006 à 10:21
Voila un programme que j'ai fait qui me semble bien complet sur les complexes. Il vous calcule le quotient et le produit de deux nombres complexes sous forme algébrique, vous transforme une écriture algébrique en écriture exponentielle et vice versa, vous calcul un angle (U,AB) ou (AB,CD), vous calcule une distance OA ou AB, et vous donne les caractéristiques d'une similitudes à partir de son écriture complexe z'=az+b.

Perso, je ne vois qu'un seul inconvénient à ce programme : 2975 Octets

Les [Teta] etc... signifie qu'il faut remplacer ce qui est entre crochets par le signe correspondant
-> c'est STO sauf à l'intérieur des menu (ALGE -> EXP et EXP -> ALGE) où c'est le signe moins suivi de supérieur ²
Code

:Lbl 0
:Radian
:Menu("QUE FAIRE ?","QUOTIEN/PRODUI",1,"ALGE/EXP",2,"ANGLE/LONGUEUR",3,"SIMILITUDES"'4'"QUITTER",Q)
:Lbl Q
:Return
:Lbl 1
:Menu("QUE FAIRE ?","QUOTIENT",5,"PRODUIT",6,"PRECEDENT",0,"QUITTER",Q)
:Lbl 5
:ClrHome
:Disp " CALCUL DE Z/Z'","     Z=X+IY","   Z'=X'+IY'"
:Input "X=",A
:Input "Y=",B
:Input "X'=",C
:Input "Y'=",D
:(AC+BD)/(C²+D²)->X
:(BC-AD)/(C²+D²)->Y
:ClrHome
:Disp X[Frac],"+I*",Y[Frac]
:Pause
:Menu("QUE FAIRE ?","REFAIRE",5,"PRECEDENTE",1,"DEBUT",0,"QUITTER",Q)
:Lbl 6
:ClrHome
:Disp "CALCUL DE Z*Z'","     Z=X+IY","   Z'=X'+IY'"
:Input "X=",A
:Input "Y=",B
:Input "X'=",C
:Input "Y'=",D
:(AC-BD)->X
:(AD+BC)->Y
:ClrHome
:Disp X[Frac],"+I*",Y[Frac]
:Pause
:Menu("QUE FAIRE ?","REFAIRE",6,"PRECEDENTE",1,"DEBUT",0,"QUITTER",Q)
:Lbl 2
:Menu("QUE FAIRE ?","ALGE->EXP",7,"EXP->ALGE",8,"PRECEDENTE",0,"QUITTER",Q)
:Lbl 7
:ClrHome
:Disp "PASSE UN NB CPLX","DE LA FORME ALGE","A EXP","     Z=X+IY"
:Input "X=",A
:Input "Y=",BA²+B²->M
:[Racine]M->M
:A/M->C
:B/M->S
:cos-1 (C)->C
:sin-1 (S)->S
:C->[Teta]
:C-S->Z
:If (abs (Z))>1E-5
:-C->[Teta]
:ClrHome
:Output(1,1,"Z=")
:Output(1,3,A)
:Output(1,8,"+I")
:Output(1,10,B)
:Output(3,1,"Z=")
:If M=iPart (M)
:Output(3,3,M)
:If M[different]iPart (M)
:Then
:Output(3,3,"[racine]")
:Output(3,4,M²)
:End
:Output(3,8"e^I")
:Output(3,11,"[teta]/[Pi])
:Output(3,16,,"[Pi]")
:Pause
:Menu("QUE FAIRE ?","REFAIRE",7,"PRECEDENTE",2,"DEBUT",0,"QUITTER",Q)
:Lbl 8
:ClrHome
:Disp "PASSE UN NB CPLX","DE LA FORME EXP"," A ALGE","Z=Ae^I[teta]"
:Input "A=",A
:Input "[Teta]=",[Teta]
:Asin([Teta])->Y
:Acos([Teta])->X
:Output(1,1,"Z=")
:Output(1,3,"[racine]")
:Output(1,4,A²)
:Output(1,8,"e^I")
:Output(1,11,[Teta]/[Pi])
:Output(1,16,"[Pi]")
:Output(3,1,"Z=")
:Output(3,3,X)
:Output(3,7,"+I")
:Output(3,10,Y)
:Pause
:Menu("QUE FAIRE ?","REFAIRE",8,"PRECEDENTE",2,"DEBUT",0,"QUITTER",Q)
:Lbl 3
:Menu("QUE FAIRE ?","ANGLE",9,"DISTANCE",A,"PRECEDENTE",0,"QUITTER",Q)
:Lbl 9
:Menu("QUE FAIRE ?","(U,AB)",B,"(AB,CD)",C,"PRECEDENTE",3,"DEBUT",0,"QUITTER",Q)
:Lbl B
:ClrHome
:Disp "CALCUL DE L'ANGL","     (U,AB)","ZA=XA+IYA","ZB=XB+IYB"
:Input "XA=",A
:Input "YA=",B
:Input "XB=",C
:Input "YB=",D
:C-A->E
:D-B->F
:E²+F²->G
:[Racine]G->G
:cos-1 (E/G)->H
:sin-1 (F/G)->I
:H-I->Z
:If abs(Z)>1E-5
:-H->H
:Disp "  ANGLE (U,AB)","H/[Pi][Frac],"*[Pi]"
:Pause
:Menu("QUE FAIRE","REFAIRE",B,"PRECEDENTE",9,"MENU ANGL/LONG",3,"DEBUT",0,"QUITTER",Q)
:Lbl C
:ClrHome
:Disp "CALCUL DE L'ANGL","(AB,CD)","ZA=XA+IYA","ZB=XB+IYB","ZC=XC+IYC","ZD=XD+IYD"
:Input "XA=",A
:Input "YA=",B
:Input "XB=",C
:Input "YB=",D
:Input "XC=",E
:Input "YC=",F
:Input "XD=",G
:Input "YD=",H
:C-A->I
:D-B->J
:G-E->K
:H-F->L
:(IK+JL)/(I²+J²)->X
:(IL-JK)/(I²+J²)->Y
:x²+Y²->M
:[racine]M->M
:X/M->C
:Y/M->S
:cos-1 (C)->C
:sin-1 (S)->S
:C-S->Z
:If abs (Z)>1E-5
:-C->C
:Disp "ANGLE (AB,CD)",C/[pi][Frac],"*[Pi]"
:Pause
:Menu("QUE FAIRE ?","REFAIRE",C,"PRECEDENTE",9,"MENU ANGL/LONG",3,"DEBUT",0,"QUITTER",Q)
:Lbl A
:Menu("QUE FAIRE ?","DISTANCE OA",D,"DISTANCE AB",E,"PRECEDENTE",3,"DEBUT",0,"QUITTER",Q)
:Lbl D
:ClrHome
:Disp "CALCUL DE OA","ZA=X+IY"
:Input "X=",A
:Input "Y=",B
:A²+B²->M
:ClrHome
:Output(1,1,"[racine]")
:Output(1,2,M)
:Pause
:Menu("QUE FAIRE ?","REFAIRE",D,"PRECEDENTE",A,"MENU ANGL/LONG",3,"DEBUT",0,"QUITTER",Q)
:Lbl E
:Disp "CALCUL DE AB","ZA=X+IY","ZB=X'+IY'"
:Input "X=",A
:Input "Y=",B
:Input "X'=",C
:Input "Y'=",D
:C-A->X
:D-B->Y
:X²+Y²->M
:ClrHome
:Output(1,1,"[racine]")
:Output(1,2,M)
:Pause
:Menu("QUE FAIRE ?","REFAIRE",E,"PRECEDENTE",A,"MENU ANGL/LONG",3,"DEBUT",0,"QUITTER",Q)
:Lbl 4
:ClrHome
:Disp "SIMILITUD DIRECT","DE FORME Z'=AZ+B","OU","A=X+IY","B=X'+IY'"
:Input "X=",A
:Input "Y=",B
:Input "X'=",C
:Input "Y'=",D
:If A=0
:Then
:Disp "PAS SIMIL DIRECT"
:Goto F
:End
:If A=1 and B=0
:Then
:Disp "TRANSLATION DE","VECTEUR OB"
:Goto F
:End
:1-A->E
:-B->F
:(CE+DF)/(E²+F²)->G
:(DE-CF)/(E²+F²)->H
:A²+B²->M
:[racine]M->M
:A/M->I
:B/M->J
:cos-1 (I)->I
:sin-1 (J)->J
:I-J->Z
:If abs (Z)>1E-5
:-I->I
:ClrHome
:Disp "CENTRE","","RAPPORT","","ANGLE"
:Output(2,1,G)
:Output(2,7,"+I")
:Output(2,9,H)
:Output(4,1,"[racine]")
:Output(4,2,M²)
:Output(6,1,I/[Pi])
:Output(6,7,"*[Pi]")
:Lbl F
:Pause
:Menu("QUE FAIRE ?","REFAIRE",4,"DEBUT",0,"QUITTER",Q)


Voila, merci de me dire ce que vous en pensez
Ratuss le 16/05/2006 à 18:37
3000 ko ca va encore, quand on voit les prog de Sangohan qui font 15000 godgrace.gif
Sangohan38 le 16/05/2006 à 19:14
C pas 3000 ko mais 3000 octets parceque 3000 ko=3000000 octets= impossible sur calcu.
En plus, après beaucoups de modifs, j'arrive qu'a 5000 octets et puis le plus gros fait 7000 octets.
webmaster le 16/05/2006 à 19:45
Pas plus de 20 Ko de programmes !

@+ Le Webmaster beer.gif

PS : Bravo pour ce programme bien complet !
Sangohan38 le 16/05/2006 à 19:53
21 KO de programme

PS: Je suis paumé sur ce programme. cry.gif
Ratuss le 16/05/2006 à 20:03
pourquoi 21 ? crazy.gif ahh.gif
webmaster le 16/05/2006 à 20:15
C'est un cas particulier, en rèqle générale, c'est environ 20ko !

@+ Le Webmaster beer.gif
Ratuss le 17/05/2006 à 07:04
Sangohan38 a écrit :
PS: Je suis paumé sur ce programme.


T'inquiète pas, tout de manière c'est tjs plus compliqué de comprendre les prgrammes des autres. bigmouth.gif
webmaster le 17/05/2006 à 11:58
Pour éviter ce désagrément, il faudrait ajouter des commentaires à chaque ligne, comme je l'avais fait ici : http://tout82.free.fr/forum/su[...]ssage=2326#2326

@+ Le Webmaster beer.gif
Sangohan38 le 17/05/2006 à 14:14
Enfait je sais pas sur quel sujet est le programme donc...
Ratuss le 17/05/2006 à 17:48
Oui sauf que tu reduis la fenetre en largeur et la tu comprends plus rien crazy.gif

Ps : Moi non plus je sais même pas à quoi sert ce prog, je ne suis encore qu'un miserable petit 2nde laugh.gif
craminou le 17/05/2006 à 21:44
je suis comme vous les gars ! je ne suis encore qu'un ignorant petit seconde ! minied.gif
Ratuss le 19/05/2006 à 07:09
Y a qu'en même un avantage : dans 3 semaines, c'est les... godgrace.gif godgrace.gif godgrace.gif
Sangohan38 le 20/05/2006 à 11:40
Erreur 2 semaines! godgrace.gif
Ratuss le 20/05/2006 à 19:26
=> je finis le 9 eyeonly.gif clown.gif
Sangohan38 le 20/05/2006 à 19:36
Je finis le 7 mais comme leconseil de classe est le 1, je vien le 2 ppur l'orientation et après plus rien.
Ratuss le 20/05/2006 à 19:52
Bof, si tu prend ca comme ca, alors moi je suis deja en vacances : mon conseil de classe est lundi godgrace.gif !
Sangohan38 le 20/05/2006 à 20:52
Ensuite ca dépend de ta classe: je suis en seconde donc pas de bac a préparer! glasses.gif glasses.gif
Ratuss le 20/05/2006 à 23:14
En fait je crois que la majorité des membres sont des 2nde : moi, toi, craminou, dark ti (y me semble), scalt (y me semble aussi), et niko mais qu'on a pas vu depuis un certains temps karate.gif cry.gif crazy.gif clown.gif
Sangohan38 le 21/05/2006 à 00:27
Ouai on est drogués de plus en plus jeunes. godgrace.gif
Enfin... surtout moi laugh.gif