PROGRAMMES CACULATRICE (POUR TEXAS INSTRUMENTS) La flèche signifie rentrer la valeur dans une variable. Elle s’obtient en appuyant sur la touche STO . Pour plus d’informations sur les instructions, regardez dans le livret de la calculatrice. Certaines instructions ne sont pas dans les menus (comme “int”) dans ce cas allez les chercher dans le menu “Catalog”. Comme j’ai une TI-85 il se peut que ceux qui on un modèle inférieur ne puissent pas faire fonctionner certains programmes. Aucun des programmes présents sur ce document n’a été récupéré sur internet. J’ai mis en bleu toutes les instructions utilisées dans les programmes. Attention, les instructions en bleu utilisé dans les programmes peuvent être différentes suivant le modèle de la calculatrice (voire même de la langue utilisée pour les possesseurs de TI-89). Il y a aussi quelques différences syntaxique entre les programmes de TI-89 et les autres (par exemple pas de « : » dans l’instruction If, entre la condition et Then) reportez vous au manuel de votre machine pour plus d’informations. POLYNOME recherche la (les) racine(s) d’un polynôme du second degré de la forme ax²+bx+c et donne le signe de f(x)=ax²+bx+c si il y a une ou pas de solution. Input“a=”,A Input“b=”,B Input“c=”,C (B²-4AC)D If D>0:Then Disp“DELTA>0 DELTA Pour la programmation, sur les Texas Instruments, le langage est à peu près le même que sur =”,DFrac (-B-D)/2AY (-B+D)/2AZ Disp“2 solutions, S=”,YFrac,ZFrac End If D= =0 :Then Disp“DELTA=0” Disp“Une solutions, S=”,(B/2A)Frac End If D<0:Then Disp“=DELTA<0 DELTA=”,DFrac Disp“Pas de solutions” End If D≤0:Then If A>0:Then Disp“f(x)>0” If A<0:Then Disp“f(x)<0” End:End RACINE donne un facteur carré pour factoriser un nombre (pour écrire sous la forme ab par exemple) Lbl lol Input“A=”,A If (int(A)≠A):Then Disp“nombre incorrect” Goto lol End If A<0:Then Disp“nombre incorrect” Goto lol If (int(A)= =A):Then Disp“A=”,A End If (int((A)≠A):Then int(A)X 1.5B Repeat (X>0) While (int(B)≠B) X-1X A/(X²)B BC End:End If (int(C) ≠C):Then Disp“A pas decomposable” If (X= = 1):Then Disp“A pas decomposable” End If (X≠1):Then Disp“A decomposable par:”,X² End:End PGCD donne le PGCD et le PPCM de deux nombres. Vous avez aussi l’instruction “gdc(” qui vous donne le pgcd et “lcm(” qui vous donne le ppcm. Mettre les chiffres séparés par des virgules. Input“A=”,X Input“B=”,Y 1R While (int(Y)≠0) RADR (int(X/Y))Q (X-Q/Y)R RC YX YW RY End If (C≠0):Then Disp“PGCD(A;B)=”,C Disp “PPCM(A,B)”,(X*Y)/C Else Disp“PGCD(A;B)=”,W Disp “PPCM(A,B)”,(X*Y)/W End HEURE 01 convertit les heures, minutes, secondes en nombre décimal. Input“nombre heures ?”,H Input“nombre minutes ?”,M Input“nombre secondes ?”,S ((S/60+M)/60+H)N Disp“nombre heures (décimal)”,N HEURE 02 convertit les heures en décimal (par exemple 1.50H) en heures (1H), minutes (30 min), secondes (00s). Input“nombre d’heures (décimal)”,N int (N)A (N-(int(N)))*60B (B-(int(B)))*60C Disp“nombre heures :”,A Disp“nombre minutes :”,int(B) Disp“nombre secondes :”,C PREM dit si un nombre est premier ou non et donne deux de ces diviseurs (attention, plus le nombre est grand, plus l’exécution du programme sera longue). Input“A=”,A If (A=1):Then Disp“1 par premiers car il” Disp“a un seul diviseur” End If (A≠1):Then 1.5R ((int(A))+1)I Repeat (I>0) While ((int(R))≠R) (A/I)R (I-1)I End:End If (R=1):Then Disp“A pas premier, divisible par:”,A/R Disp“et par”,R Else Disp“A est premier” End:End BITS aucune utilité mathématique. Fait défiler des 0 et des 1 à l’écran (possibilité de réglage de la vitesse de défilement en changeant la valeur de A). Vous n’êtes par obliger de recopier exactement les 0 et les 1 entre les guillemets de l’instruction “Disp” Lbl lol 1I 65A Disp“000111101110000110101” For(I,1,A,1):End Disp“010010101000101111010” For(I,1,A,1):End Disp“001011110110100101110” For(I,1,A,1):End Disp“001011111101111101010” For(I,1,A,1):End Disp“111010110100101001011” For(I,1,A,1):End MARTIX aucune utilité mathématique. 1I Lbl lol Disp I (I+1)I Goto lol Disp“001101110111011000011” For(I,1,A,1):End Disp“001111101101110110001” For(I,1,A,1):End Disp“111010010010110110001” For(I,1,A,1):End Disp“001110111000111101110” For(I,1,A,1):End Disp“111001011001101010010” For(I,1,A,1):End Disp“011101011100110001101” For(I,1,A,1):End Goto lol BASE (pour Ti-89) Permet de convertir un nombre de n’importe quelle base (de base 2 à base 16) dans une autre base (de 2 à 16) Local o,p,q,l,j,u,t,n,s,m,v,r,w Lbl recom InputStr “Nb à convertir”,o Input “de la base”,p Input “dans la base (de 2 à 16)”,q 0l If p≠10 Then Dim(o)j For u,1,j,1 Mid(o,u,1)t If t=“0” Then:0n EsleIf t=“1” Then:1n EsleIf t=“2” Then:2n EsleIf t=“3” Then:3n EsleIf t=“4” Then:4n EsleIf t=“5” Then:5n EsleIf t=“6” Then:6n EsleIf t=“7” Then:7n EsleIf t=“8” Then:8n EsleIf t=“9” Then:9n EsleIf t=“a” or t=“A” Then:10n EsleIf t=“b” or t=“B” Then:11n EsleIf t=“c” or t=“C” Then:10n EsleIf t=“d” or t=“D” Then:10n EsleIf t=“e” or t=“E” Then:10n EsleIf t=“f” or t=“F” Then:10n EndIf If n≥p Then Disp “base incorrecte” Goto recom EndIf l+n*p^(j-u)l EndFor Else Expr(o)l EndIf If q=10 then Disp“resultat:” Pause l Else “”s:“”m Lbl lol l/qv reste(l,q)r partEnt(v)l chaine(m)m If r=0 Then :car(48)m ElseIf r=1 Then :car(49)m ElseIf r=2 Then :car(50)m ElseIf r=3 Then :car(51)m ElseIf r=4 Then :car(52)m ElseIf r=5 Then :car(53)m ElseIf r=6 Then :car(54)m ElseIf r=7 Then :car(55)m ElseIf r=8 Then :car(56)m ElseIf r=9 Then :car(57)m ElseIf r=10 Then :car(65)m ElseIf r=11 Then :car(66)m ElseIf r=12 Then :car(67)m ElseIf r=13 Then :car(68)m ElseIf r=14 Then :car(69)m ElseIf r=15 Then :car(70)m EndIf m&ss If partEnt(v)≠0 Then Goto lol EndIf Disp “resultat:” Pause s Request “recommencer?(o/n)”,k If k≠“n” Then Goto recom EndIf CPLAB (pour TI-89) Permet de trouver tous les couples d’entiers naturels (a,b) tels que a*b=x et pgcd(a,b)=y (avec x et y deux entiers naturels définis par l’utilisateur). Local x,ab,a,b,d Input “a*b=”,x Input “pgcd(a,b)=”,d nouvList(2)ab For a,1,x,1 x/ab If partEnt(b)=b Then If pgcd(a,b)=b Then aab[1]:bab[2] Disp “(a,b)=”,ab If a≠x Then Pause EndIf:EndIf:EndIf Disp “Fin” DIVISEUR (pour TI-89) Permet de trouver tous les diviseurs positif d’un entier naturel a. Local x,y Input “Nb:”,x For y,1,x,1 If partEnt(x/y)=x/y Then Disp “Diviseur:”,y If y≠x Then Pause EndIf:EndIf EndFor Disp “Fin” COORD (pour TI 89) Permet de convertir des coordonnées (plan ou espace) dans les autres systèmes de coordonnées (polaires, cartésiennes, sphériques). Marche avec tout type de coordonnées. Local x,z,y,r,rs,θ,θs,ψ,cc,cs,cp,e,type PopUp {“Plan”,“Espace”},e If e=1 Then PopUp {“Carth→Pol”,“Pol→Carth”},type If type=1 Then Disp “coor cartésiennes de M” Input “x=”,x Input “y=”,y √(x^2+y^2)→r Arg(x+iy)→θ NouvList(2)→cc x→cc[1] : y→cc[2] NouvList(2)→cp r→cp[1] : θ→cp[2] Disp “M”,cc,“a pour coord pol :” Disp cp Else Disp “coor polaires de M” Input “r=”,r Input “θ=”,θ r*cos(θ)→x r*sin(θ)→y NouvList(2)→cc x→cc[1] : y→cc[2] NouvList(2)→cp r→cp[1] : θ→cp[2] Disp “M”,cp,“a pour coord cart :” Disp cc EndIf Else PopUp{“Coord cart”,“Coord polaires”,“coord sphériques”},type If type=1 Then Disp “coor cartésiennes de M” Input “x=”,x Input “y=”,y Input “z=”,z √(x^2+y^2+z^2)→r Arg(x+iy)→θ Abs(arctan(√(x^2+y^2)/z))→ψ NouvList(3)→cc x→cc[1] : y→cc[2] : z→cc[3] NouvList(3)→cp r→cp[1] : θ→cp[2] : z→cp[3] NouvList(3)→cs r→cs[1] : θ→cs[2] : ψ→cs[3] Disp “M”,cc,“a pour :” Disp “Coord polaires :” Disp cp Pause Disp “Coord spheriques :” Disp cs ElseIf type=2 Then Disp “Coor polaires de M” Input “r=”,r Input “θ=”,θ Input “z=”,z r*cos(θ)→x r*sin(θ)→y √(x^2+y^2+z^2)→rs arg(x+iy)→θs abs(arctan(√(x^2+y^2)/z))→ψ NouvList(3)→cc x→cc[1] : y→cc[2] : z→cc[3] NouvList(3)→cp r→cp[1] : θ→cp[2] : z→cp[3] NouvList(3)→cs r→cs[1] : θ→cs[2] : ψ→cs[3] Disp “M”,cp,“a pour :” Disp “Coord cart :” Disp cc Pause Disp “Coord spheriques :” Disp cs ElseIf type=3 Then Lbl recom Disp “Coor polaires de M” Input “r=”,r Input “θ=”,θ Input “ψ=”,ψ If r<0 or ψ<0 Then Disp “r<0 ou ψ<0” Goto recom EndIf r*cos(ψ)→z r*sin(ψ)*cos(θ)→x r*sin(ψ)*sin(θ)→y NouvList(3)→cc x→cc[1] : y→cc[2] : z→cc[3] NouvList(3)→cp r→cp[1] : θ→cp[2] : z→cp[3] NouvList(3)→cs r→cs[1] : θ→cs[2] : ψ→cs[3] Disp “M”,cs,“a pour :” Disp “Coord cart :” Disp cc Pause Disp “Coord polaires :” Disp cp EndIf : EndIf