11 juil 2013 · 2 2 Tout le plaisir de la fonction seq, programmation fonctionnelle 14 9 9 Corrigé de l'exercice 16 (méthode de Newton)
Previous PDF | Next PDF |
[PDF] TP1 : Premiers pas en Maple - Page de Cécile Armana
Il s'agit d'apprendre à utiliser Maple en illustrant votre programme de Règle n˚3 : il vaut mieux commencer une feuille de calcul ou un exercice par la
[PDF] Corrigé du TD Maple n°3 (MPSI – Année scolaire 2010 - Tourbillon
restart; > Exercice 1: La procédure "valeurabs(x)" calcule la valeur absolue de x > valeurabs:=proc(x) > local a; > a:=evalf(x);#"astuce" permettant de calculer
[PDF] Maple TP4 Corrigé - cpgedupuydelomefr
TP Info n°4 2012-2013 Thème : suites et séries de fonctions Exercice 1 Soit f une fonction que l'on définira ultérieurement Définir la suite de fonctions gndonnée
[PDF] Poly de TP Maple en MPSI
d'équations lors d'un exercice de géométrie : le logiciel permet d'alléger les calculs L'usage d'un logiciel de calcul formel figure pour tous, au programme des
[PDF] Algorithmique et programmation en Maple Travaux - Normale Sup
9 déc 2005 · Algorithmique et programmation en Maple Travaux pratiques : corrigé 9 décembre 2005 Marc Mezzarobba Exercice 1 Écrire une fonction
[PDF] Maple TD2
Maple TD2 1 Correction des exercices précédents 1 1 Factorielle 1 cf plus bas 2 fact1 := proc(n) local x,i; if n < 1 then return NON end if; x:=1; for i from 1 to n
[PDF] Travaux pratiques sous Maple et MatlabR - Institut de
l'issue de la séance Les travaux rendus hors délais ne seront pas corrigés Comparez lorsque c'est possible votre programme aux réponses des fonc- tions du logiciel et de présenter les exercices dans des sections distinctes Pour cela
[PDF] Un panorama de lutilisation de MAPLE initialement - univenligne
11 juil 2013 · 2 2 Tout le plaisir de la fonction seq, programmation fonctionnelle 14 9 9 Corrigé de l'exercice 16 (méthode de Newton)
[PDF] dissipation visqueuse definition
[PDF] cours maple pdf
[PDF] fonction maple
[PDF] dosage chlorure de sodium par nitrate d'argent
[PDF] methode de mohr correction
[PDF] argentimétrie dosage
[PDF] tp4 titrage par précipitation méthode de mohr
[PDF] dosage des chlorures par la méthode de mohr tp
[PDF] dosage argentimétrique des chlorures
[PDF] dosage des ions cuivre par spectrophotométrie
[PDF] dosage des ions sulfates par spectrophotométrie
[PDF] dosage du cuivre par l'edta
[PDF] iodometrie dosage du cuivre d'une solution de sulfate de cuivre
[PDF] dosage des ions cuivre ii corrigé
Un panorama de l'utilisation de MAPLE
initialement concu pour la classe de MP du lycee Paul Cezanne11 juillet 2013
Vous travaillerez avec un surligneur pour noter les fonctions qui vous seront utiles au fur et a mesure que nous avancerons dans le cours et dans les exercices.Table des matieres
1 Les types de base, les structures 3
1.1 Les expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31.2 Sequences, listes, ensembles et tables : quatre types dierents. . . . . . . .
51.3 Le type tableau Array (pour les TIPE) . . . . . . . . . . . . . . . . . . . . .
81.4 Autour de la simplication . . . . . . . . . . . . . . . . . . . . . . . . . . .
92 L'algorithmique 10
2.1 Les boucles et instruction conditionnelles . . . . . . . . . . . . . . . . . . .
102.2 Tout le plaisir de la fonction seq, programmation fonctionnelle . . . . . . .
142.3 Exercices basiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
153 L'algebre generale, l'arithmetique 17
3.1 Simplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
173.2 Les polyn^omes et fonctions rationnelles : . . . . . . . . . . . . . . . . . . . .
204 L'algebre lineaire, deux packages, faites UN choix 22
4.1 L'algebre lineaire avec linalg . . . . . . . . . . . . . . . . . . . . . . . . . . .
224.2 L'algebre lineaire avec LinearAlgebra . . . . . . . . . . . . . . . . . . . . . .
254.3 L'algebre lineaire : exemples et exercices . . . . . . . . . . . . . . . . . . . .
295 L'analyse 34
5.1 Les outils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
345.2 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
416 La geometrie, les plots 2d et 3d 48
6.1 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
49Document disponible surunivenligne.frou surmpcezanne.frsous le nomQueFautIlSavoir 1
7 Resume des competences 51
8 TD52
8.1 Procede de Gram-Schmidt . . . . . . . . . . . . . . . . . . . . . . . . . . . .
528.2 Methode de Jacobi pour le calcul des valeurs propres . . . . . . . . . . . . .
539 Corrections des exercices et des TD 56
9.1 Corrige de l'exercice (6) corps quadratiques . . . . . . . . . . . . . . . . . .
569.2 Corrige de l'exercice 9 (algebre lineaire) . . . . . . . . . . . . . . . . . . . .
619.3 Corrige de l'exercice 9 (LinearAlgebra) . . . . . . . . . . . . . . . . . . . . .
679.4 Corrige de l'exercice 4.3 (systeme lineaire) . . . . . . . . . . . . . . . . . . .
769.5 Corrige de l'exercice (11) (matrices et determinants) . . . . . . . . . . . . .
799.6 Corrige de l'exercice 12 (developpement asymptotique) . . . . . . . . . . . .
819.7 Corrige de l'exercice 14 (serie alternee?) . . . . . . . . . . . . . . . . . . . .
859.8 Corrige de l'exercice 15 (serie harmonique alternee) . . . . . . . . . . . . . .
889.9 Corrige de l'exercice 16 (methode de Newton) . . . . . . . . . . . . . . . . .
909.10 Corrige de l'exercice 19 (division par zero) . . . . . . . . . . . . . . . . . .
969.11 Corrige de l'exercice 21 (courbes de Bezier...) . . . . . . . . . . . . . . . . .
1009.12 Correction TD : le procede de Gram-Schmidt (8.1) . . . . . . . . . . . . . .
1119.13 Correction TD : La methode de Jacobi (8.2) . . . . . . . . . . . . . . . . . .
1142
1 Les types de base, les structures
1.1 Les expressions
Un logiciel de calcul formel permet d'eectuer des operations sur desexpressions; elles sont de dierentstypes. Pour une premiere approche vous distinguerez en pratique : 1. Les ob jetsde t ypen umerique: en tiers(in teger),rationnels (fraction), ottan ts oat), complexes (complex), algebriques ... 2.Les v ariablesformelles (sym bol)
3. Les expressions b ooleennesqui son tdes relations, des c omposeesde relations comme (a=b);(a <= 0) or (k=n);... 4. Les expressions comp osees: sommes ,pro duit,quotien ts,incluan td oncexpressions polynomiales, fractions rationnelles... 5. Les expressions structur ees: s equences,listes, ensem bles,in tervalles(range), tables, tableaux (Array), matrices et vecteurs de l'algebre lineaire-geometrie (variables se- lon la bilbliotheque choisie=... 6.Les fonctions et les pro cedures...
Toutes ces expressions, a l'exception des sequences (qui sont des suites d'expressions) ont une structure syntaxique que l'on represente par un arbre comme dans les deux exemples qui suivent : 33x2+ 6xy+ 1sin(!x+)+
1 3 ^x6y x2sin !x les fonctionswhattype, op, nopsles fonctionswhattype, op, nopsE:= 3*x**2+6*x*y+1; whattype(E); nops(E); op(E);E:= 3x2+ 6xy+ 1
33x;6xy;1
op(1,E); nops(%); whattype(op(1,E)); op(op(1,E)); 3x2 2 3;x241.2 Sequences, listes, ensembles et tables : quatre types dierents.
Les sequences (suites)commentaires
s:= a,b,c,d ; s:=a;b;c;d s[2]; b s, e; a;b;c;d;e nops(s);Error, invalid input: nops
expects 1 argument, but received 3a gauche, dans l'ordre : cr eationd'une s equence; {s[i];on appelle leiiemeelement de la sequence s avec s[i]; {s, e;ajoute un element a la sequence ou a la liste; la virgule est un operateurdeconcatenationde deux sequences... l'instruction nops(s);avec une sequence provoque uneerreur a la- quelle il faut toujours s'attendre: une fonction attend une suite d'ar- guments de types donnes et dans un ordre donne. Ici nops(...) attend une expression et en recoit plusieurs (ce qui est :Error, invalid input : nops expects1 argument, but received 3
provoquent aussi des erreurs : s[0]; s[5];(ces termes n'existent pas)Le constructeur de sequencesseqseq([i,i^2],i=1..6); [1;1];[2;4];[3;9];[4;16];[5;25];[6;36]Cela se passe de commentaire, on verra tout ce que l'on peut en faire dans la sec- tion (2.2)5Les listes
L:=[a,b,c,d];
L:= [a;b;c;d]
L[2]; b nops(L); 3 op(L), e; a;b;c;d;e [op(L), e ]; [a;b;c;d;e]L[nops(L)];
ea gauche : cr eationd'une liste ; on ap pellele iiemeelement de la liste L avec L[i]; nops(L) ;retourne le nom brede ses elements; op(L) est la sequencedes elements de L; ce n'est pas une liste! a jouteun element ala s equence ou a la liste... app eld udernier elementsde la liste provoqueraient des erreurs : L[0]; L[5];(n'existent pas)Les tableauxcommentairesT[0]:=a;
for i from 1 to 5 doT[i]:=f(T[i-1]);
od;T[0] :=a
T[1] :=f(a)
T[5] :=f(f(f(f(f(a)))))
T; eval(T); T table([0 =a;1 =f(a);2 =f(f(a));3 =f(f(f(a)));5 =f(f(f(f(f(a)))));4 =f(f(f(f(a))))])L'aectationT[expr]:= ...;cree
une table T (dont on pourra explici- ter la structure aveceval(T)). On observera que l'appelTrenvoie la lettreTsans evaluation.6La fonctionmap :map(f,[a,b,c]);
[f(a);f(b);f(c)] map(f,[a,b,c],x); [f(a;x);f(b;x);f(c;x)] map2(f,x,[a,b,c]); [f(x;a);f(x;b);f(x;c)]A:=matrix([[a,b],[c,d]]):
map(f,evalm(A)); f(a)f(b) f(c)f(d)map(f,expr)retourne uneexpression de m^emetypeque expr dont les termes (ou descendants) sont les images par f des descendants de exprLa fonctionunapply :unapply(Xb2+X+1);X!X2+X+ 1
unapply(Xbn+X-1,(n,X)); (n;X)!Xn+X1permet de transformer une expression en fonction71.3 Le type tableau Array (pour les TIPE)
Nous avons la une structure qui est proche du celle des listes. Dans les versions recentes de MAPLE (l'actuelle est la 16), les listes ne sont plus gerees des lors qu'elles comptent un certain nombre d'elements. La structureArrayest alors conseillee pour les programmes qui gerent de grosses structures (pour nous cela ne concerne que les TIPE). Elle permet de denir des tableaux a un ou plusieurs index dont les termes admettent, comme ceux des listes, des types quelconques.SyntaxeCommentairesV := Array([]);
V(1) := [a1, f, g];
V(2) := [a2, f, g];
V(4) := x;
ArrayNumElems(V);
V; V(1); V[1];V:= []
V:= [[a1;f;g]]
V:= [[a1;f;g] [a2;f;g]]
V:= [[a1;f;g] [a2;f;g] 0x]
4 [[a1;f;g] [a2;f;g] 0x] [a1;f;g] [a1;f;g]{La syn taxeest di erentede celle des listes : on peut les construire terme a terme et ajouter des termes parinser- tionV(i):=...;; l'insertion sem bleaccepter les d eux syntaxesV(i):=...;etV[i]:=...; cette derniere est source de buggs dans les programmesoubliez la!81.4 Autour de la simplication
~subs, op, evalf, evalc, value, simplify (no magic!), normal, expand/combine, rationalizesubscommentairesE:=a^2+7*a*b^2=12*a*b-b^3;
subs(a=r,%); subs(b=a,%); subs(a=r,%); E; r2+ 7rb2= 12rbb3
r2+ 7ra2= 12raa3
r2+ 7r3= 12r2r3
a2+ 7ab2= 12abb3Permet de remplacer des sous expressions
dans une autre, la syntaxe est subs(sous-expr = new, expression); subs(sous-expr = new, expression);Attention,
- siexpressionest une variable aectee, cela ne reaecte pas la variable - siexpressionest une matrice sousli- nalgpar exemple, ne pas oublierevalm!Voir 2.subsopcommentaires
E:=a^2+7*a*b^2+12*a*b-b^3
a2+ 7ab2+ 12abb3
subsop(2=x*y,E) a2+xy+ 12abb3Permet de remplacer la ieme sous-
expression) de expr par r (ici i=2, c'est le deuxieme terme de la somme qui est rem- place).92 L'algorithmique
Pour ce qui est des exercices d'algorithmique (tres) basique, on pourra consulter les quelques pages de Algorithmique1.pdf...2.1 Les boucles et instruction conditionnelles
~boucle for ... from ... to ... do ... od;Suites recurrentes, sommes, produits, listes :u
n+1=f(un) : le niemeterme dans une variableu n+1=f(un) : les n premiers termes dans une tableu:=u0; for i from 1 to n do u:=f(u); od;u[0]:=u0; for i from 1 to n do u[i]:=f(u[i-1]); od;une sommeun produit s:=0; for i from 0 to n do s:=s+a[i] ; od;p:=1; for i from 0 to n do p:=p*a[i]); od;une listeune recurrence lineaire double (ici suite de Fibonacci)L:=[ ]; for i from 1 to n doL:=[op(L), a[i]];
od;F[0]:=0;F[1]:=1;
for i from 0 to n-2 doF[i+2]:=F[i+1]+F[i];
od;10 Doubles bouclesfor(matrices) :matricematrice triangulaire superieureM:=matrix(n,n);
for i from 1 to n do for j from 1 to n doM[i,j]:= 1/(i+j)
od od; evalm(M); 2 6641=2 1=3 1=4
1=3 1=4 1=5
1=4 1=5 1=63
775M:=matrix(n,n,0);
for i from 1 to n do for j from i to n doM[i,j]:= 1/(i+j)
od od; evalm(M); 2 6641=2 1=3 1=4
0 1=4 1=5
0 0 1=63
775C'est aussi avec une boucle for que vous calculerez les sommes partielles d'uneserie,
d'uneserie de fonctions(voir la raison exposee dans le paragraphe sur lesseries deFourier(5-6));
~boucle while ... do ... od;La syntaxe est :
> while < cond > do < instr > > od; Oucond(pour condition ) est une expressionbooleenneetinst(pour instructions) est une suite d'instructions. La condition est evaluee au moins une fois, en debut de boucle : si elle prend la v aleurfaux(oufalse), les instructions (instr ) ne sont pas executees, le programme poursuit apres la boucle; si elle prend la v aleurvrai(outrue), les instructions sont executees et le programme reprend en debut de boucle (ou la condition est reevaluee); Elle est de la formeC(x1;x2;:::;xn) et depend du contenu de variables presentes dans le programme; elle est donc susceptible d'^etre modiees par les instructions ducorpsde la boucle. Theoreme 1condition d'arr^et dans une boucle while. Considerons une suite d'instructions contenant une bouclewhilede conditionC(x1;x2;:::;xn): A la sortie de la b ouclela c onditionest toujours fausse (la c onditiond'arr ^etest la negation deC(x1;x2;:::;xn)); Si C(x1;x2;:::;xn)est vraie a l'entree de la boucle, et si les instructions qui suivent ne changent pas sa valeur, alors la boucle ne termine pas (on dit que le programme boucle indeniment); 11Exercice 1
Soit (Sn)ndenie par
S n=nX k=11k 1.Mon trerque ( Sn)na pour limite +1:
2. D eterminerun programme (ou une fonction) qui d eterminele plus p etiten tiern, tel queSn5: 3. Calculer le nom bred'op erations(additions, divisions) des trois programmes suiv ants: S:=1; n:=1; while S < 5 do n:=n+1;S:=S+1/n;
od; n;S:=1; n:=1; while S < 5 do n:=n+1; S:=0; for i from 1 to n doS:=S+1/i;
od; od; n;S:=n->sum(1/k,k=1..n); k:=1; while S(k) < 5 do k:=k+1; od; k;Reponse Si N est l'entier cherche, le programme de gauche retourne N en N iterations co^utant chacune une addition et une division. Par contre, le programme de la colonne centrale, qui recalculeSna chaque iteration dans la bouclewhile, realise1 + 2 + 3 +:::+N=N(N+ 1)2
additions et divisions. Il revient au m^eme de remplacer le calcul deSnpar un appel asum(1/k,k=1..n)comme dans l'exemple de droite, l'erreur est identique bien que (legerement) cachee, puisque chaque appel a la fonctionsumdeveloppe ses propres addi- tions et multiplications (k et k pour S(k)).Exercice 2division euclidienne des entiers
Pour calculer les entiersqetrtels quea=bq+ravec 0r < bvous n'imaginez tout de m^eme pas que votre processeur utilise des multiplications? Voila ce qu'il fait : on part dea= 243 on retrancheb= 13 jusqu'a obtenir un nombrer < b:2432302172041911781651521391261131008774614835229
Programmez une fonction DE :=proc(a,b) qui retourne q et r lorsque a et b sont des entiersquotesdbs_dbs13.pdfusesText_19