︠3d0249c5-42bb-4fe4-9e65-e8dff88aafc9i︠ %html
Ceci est un TP interactif utilisant le logiciel mathématique Sage. Vous êtes sur un document mixte contenant à la fois du texte et des cellules de code Sage que vous pouvez modifier et exécuter.
\n Ceci est un TP interactif utilisant le logiciel mathématique Sage. Vous êtes sur un document mixte contenant à la fois du texte et des cellules de code Sage que vous pouvez modifier et exécuter.\n
\n\n\nLes cellules exécutent du code python, langage que nous allons découvrir petit à petit lors des séances. La cellule suivante utilise la commande print.
\n Les cellules exécutent du code python, langage que nous allons découvrir petit à petit lors des séances. La cellule suivante utilise la commande print.\n
\n\n\nExecutez la cellule ci-dessous et décrivez le résultat.
︡8b9162dd-416a-4d5f-9d6b-65b8c8cf9c14︡{"html":"\n Executez la cellule ci-dessous et décrivez le résultat.\n \n
\n\n"}︡ ︠fcdef2c3-ae51-4fbe-90ec-cc31b8437dda︠ ma_chaine = "Hop " print ma_chaine + ma_chaine ︡f8b13966-6205-4698-8b3b-6e3ea5b69f18︡ ︠b06c6f8c-765c-4bd2-b902-34510426e3cci︠ %md Double cliquez pour écrire votre réponse. ︡549cf236-cb45-48ef-943b-60ee75335fe5︡{"md":"Double cliquez pour écrire votre réponse.\n"}︡ ︠da33c2ef-5583-43f9-9496-777a281d318ei︠ %htmlExécutez les 3 cellules suivantes puis à nouveau la deuxième cellule. Que remarquez-vous ?
︡3920d0a0-eaac-472f-8800-47ccd7ad27cb︡{"html":"\n Exécutez les 3 cellules suivantes puis à nouveau la deuxième cellule. Que remarquez-vous ?\n \n
\n"}︡ ︠8ca92fc5-0667-4108-9a02-c1f4f40f2f07︠ a = "bla" ︡653ec56e-7c61-40c6-b1d1-b1dac6fa912b︡ ︠c1d73bcd-f5d1-4472-8a53-240ba9caf3f5︠ print a ︡f501aa67-3251-456c-ade2-9e6e315964fe︡ ︠91ebe9c2-3c08-402e-bf29-dfa0bd9c2b5e︠ a = "blo" ︡0fad46be-dc8f-4676-864b-a4f70008e1b1︡ ︠38ee13b0-eebb-4d12-9d32-8246d5d3b9c8i︠ %md Double cliquez pour écrire votre réponse ︡ad07ca7c-b14b-43b9-99f4-c347b0b899fd︡{"md":"Double cliquez pour écrire votre réponse\n"}︡ ︠08678548-4470-4b3b-85a0-e2ea9c9f33cbi︠ %htmlRemarque : contrairement au C++, on ne déclare pas à priori le type des variables python. Cependant, les variables sont bien typées : le typage se fait de façon dynamique à l'exécution du programme. Exécutez les cellules suivantes pour mettre en évidence ce phénomène.
︡a7a7e0b9-1fc2-4458-b539-d97a2de29f3f︡{"html":"\n Remarque : contrairement au C++, on ne déclare pas à priori le type des variables python. Cependant, les variables sont bien typées : le typage se fait de façon dynamique à l'exécution du programme. Exécutez les cellules suivantes pour mettre en évidence ce phénomène.\n
\n"}︡ ︠b266c325-7cf4-4c8c-b186-121c7c40c421︠ a = "bla" type(a) ︡0f5448ed-da6b-4372-820a-ec20f7f85401︡ ︠d1a78b48-7fa7-4b63-82bb-04dee002b2ae︠ a = 5 type(a) ︡dbda6d88-3fc5-41d4-9e33-0d24cefd604d︡ ︠bbb1996a-a77e-4bef-b1e5-40538de93f4e︠ a = 2.12 type(a) ︡993a71b6-ca13-40e6-bdbb-ef8066fe6292︡ ︠93f42f0d-7488-401c-b711-6a3c59efa3ffi︠ %htmlSage est un logiciel pour les mathématiques. Vous pouvez le voir comme une "grosse" calculatrice en plus avancé... On peut donc s'en servir pour faire du calcul formel, c'est-à-dire du calcul sur des objets mathématiques.
Exécutez les cellules suivantes.
︡2928838d-0451-436b-a9f6-53ac1a95a7e8︡{"html":"\n Sage est un logiciel pour les mathématiques. Vous pouvez le voir comme une \"grosse\" calculatrice en plus avancé... On peut donc s'en servir pour faire du calcul formel, c'est-à-dire du calcul sur des objets mathématiques.\n
\n\n\n Exécutez les cellules suivantes.\n \n
\n"}︡ ︠6b4342ed-3c74-4786-b42b-2dbde1e4e598︠ ︡3e09c497-5108-4496-a7d9-d6b919a3f84e︡ ︠30615d8d-7a73-4f26-be7f-ee1254659fe8s︠ f(x) = x^2 print f ︡008f427e-08dd-41ba-a6d0-ad12de937897︡{"stdout":"x |--> x^2\n"}︡{"done":true}︡ ︠22799283-8c11-4fc8-93db-b2ada714684cs︠ type(f) ︡3c91e6dd-c654-42c4-b2e5-286065ac699c︡{"stdout":"
L'objet f
est une expression mathématique. Ce n'est pas une procédure de calcul mais bien un ensemble d'informations représentant un objet mathématique. En particulier, on peut effectuer diverses sortes d'opérations.
Exécutez les cellules suivantes.
︡c0e7160a-47a5-4985-a74c-44fc1255b0f8︡{"html":"\n L'objet f
est une expression mathématique. Ce n'est pas une procédure de calcul mais bien un ensemble d'informations représentant un objet mathématique. En particulier, on peut effectuer diverses sortes d'opérations.\n
\n Exécutez les cellules suivantes.\n \n
\n"}︡ ︠1cdca3ce-0808-42c5-a6dd-d78872f8b23a︠ ︡c28ce709-16a5-4e73-b928-be913fcea03f︡ ︠77294e03-70fe-4a75-b38e-e8d39e87505as︠ f.derivative(x) ︡441b0c08-78e4-4f7f-91e1-4a95c366cebd︡{"stdout":"x |--> 2*x\n"}︡{"done":true}︡ ︠3e756431-5d98-4268-808a-5cac58bc4b45s︠ f.integral(x) ︡933e269e-310c-4ddf-910b-e0097fe0aead︡{"stdout":"x |--> 1/3*x^3"}︡{"stdout":"\n"}︡{"done":true}︡ ︠363afcc5-47fc-4c87-823c-488a6613cc7e︠ f(2) ︡fee20c91-e0d8-465f-8c3d-0f51948238b0︡ ︠3c8c6130-7c6b-4397-84ce-1cc292e87015︠ f(2*x) ︡0d30b561-2fcd-42b7-9de3-89461459e882︡ ︠91d16e8e-901c-45ee-9d9c-b50cd1e50ad8︠ ︡5857217a-183b-43b0-8d3d-16c83178b9ae︡ ︠5745a8e8-c5a5-41cd-8f26-177a8e4093cf︠ 2*f ︡d43d202e-3e77-4d27-9ce8-f3fcab45d706︡ ︠f8787ee8-725e-4e8e-98bc-c3d768233f4bs︠ plot(f) ︡ef014f0b-b26f-4597-b8a4-48d812c222d6︡{"file":{"filename":"/projects/f23f3842-6afa-49e3-a906-5d368869c92e/.sage/temp/compute2-us/21716/tmp_e10IbV.svg","show":true,"text":null,"uuid":"6e77a318-4a3a-44dd-a6c4-f791b19ca89c"},"once":false}︡{"done":true}︡ ︠14a53933-9141-434c-962e-05f7c67b98b0︠ plot(f, (x,-4,4)) ︡c421135a-4b27-42cd-bc72-dc97707308f9︡ ︠f0373fed-95d8-4c3c-b023-a1e11e97a9cfi︠ %html
Remarque : dans ce programme, f
est un objet, dans Sage la plupart des données sont représentées sont formes d'objets. Les fonctions derivative
et integral
sont appelées des méthodes de l'objet f
. Pour connaître toutes les méthodes de l'objet f
, tapez f.
puis tabulation dans une cellule.
\n Remarque : dans ce programme, f
est un objet, dans Sage la plupart des données sont représentées sont formes d'objets. Les fonctions derivative
et integral
sont appelées des méthodes de l'objet f
. Pour connaître toutes les méthodes de l'objet f
, tapez f.
puis tabulation dans une cellule. \n
Pour obtenir de l'aide et des exemple sur l'utilisation d'une méthode tapez : f.methode?
ou bien help(f.methode)
. Lisez la documentation de la méthode limite et calculez la limite de la fonction $1/x$ en 0.
\n Pour obtenir de l'aide et des exemple sur l'utilisation d'une méthode tapez : f.methode?
ou bien help(f.methode)
. Lisez la documentation de la méthode limite et calculez la limite de la fonction $1/x$ en 0.\n
Remarque : dans l'exemple précédent, $x$ est aussi un objet Sage, c'est une variable symbolique au sens mathématique du terme. Ce n'est PAS la même chose qu'une variable python comme tout à l'heure pour a
!
\n Remarque : dans l'exemple précédent, $x$ est aussi un objet Sage, c'est une variable symbolique au sens mathématique du terme. Ce n'est PAS la même chose qu'une variable python comme tout à l'heure pour a
! \n
Définissez une fonction g
contenant un polynôme en $x$, dessinez votre fonction avec plot
. Calculez sa dérivée, et son intégrale et dessinez-les avec plot
.
\n Définissez une fonction g
contenant un polynôme en $x$, dessinez votre fonction avec plot
. Calculez sa dérivée, et son intégrale et dessinez-les avec plot
.\n
Affichez ensemble votre fonction g
, son intégrale et sa dérivée en utilisant des couleurs différentes.
\n Affichez ensemble votre fonction g
, son intégrale et sa dérivée en utilisant des couleurs différentes.\n
La cellule suivante définit une fonction h
, calculez la tangente de h
en 0 et affichez ensemble la fonction et sa tangente.
\n La cellule suivante définit une fonction h
, calculez la tangente de h
en 0 et affichez ensemble la fonction et sa tangente.\n
En plus des fonctions, il est possible d'afficher de nombreuses formes géométriques.
Exécutez les cellules suivantes en observant attentivement la syntaxe des fonctions.
︡396f3bc2-45f9-4a2b-94b9-bbcd6f19f443︡{"html":"\n En plus des fonctions, il est possible d'afficher de nombreuses formes géométriques.\n
\n\n Exécutez les cellules suivantes en observant attentivement la syntaxe des fonctions.\n
\n"}︡ ︠23779f70-9d35-4a09-bf18-4fbbf3cf8b70︠ point2d((3,4)) ︡cfb79811-ad2d-4e95-8c7d-ec51a442fff4︡ ︠8f15bbad-e1e5-4410-875e-4b9a25f961b4︠ circle((0,0),1) ︡e23929f5-67c4-4559-a8be-484ddb031472︡ ︠8fa4e3c2-482d-40e6-a8ea-39b874aca723︠ line2d([(0,0),(1,1),(2,0)]) ︡5103dfd0-72e2-440c-9259-a31014d44efc︡ ︠a912484f-5737-4fca-8c04-94c4e2ae0f4e︠ polygon2d([(0,0),(1,0),(1,1),(0,1)]) ︡68619c89-c3b5-478d-9118-db66b8af71d2︡ ︠fe4b96b7-6de3-4d87-b99d-313eb27290d0i︠ polygon2d([(0,0),(0,1),(1,1),(1,0)]) ︡b3bf2491-3b9e-48c8-b5b7-4c0a39765a3c︡ ︠916f1c98-0225-413e-9e4b-a4f7eba9ad88i︠ %html Dans le premier exemple, les coordonnées du point sont données par l'objet(3,4)
, c'est ce qu'on appelle un [p1,p2,...]
. Nous verrons plus en détail ces structures dans la suite du cours.
Affichez un carré dont les coordonnées sont (-1,-1),(1,-1),(1,1),(-1,1)
(3,4)
, c'est ce qu'on appelle un [p1,p2,...]
. Nous verrons plus en détail ces structures dans la suite du cours.\n\n\n Affichez un carré dont les coordonnées sont (-1,-1),(1,-1),(1,1),(-1,1)
\n
Dans la cellule suivante, on définit 3 points.
\n Dans la cellule suivante, on définit 3 points.\n
\n
Calculez les coordonées d'un hexagone régulier et tracez-le. Vous pouvez utiliser les fonctions cos
et sin
ainsi que la constante pi
.
\n Calculez les coordonées d'un hexagone régulier et tracez-le. Vous pouvez utiliser les fonctions cos
et sin
ainsi que la constante pi
.\n
Tracez sur la même image un cercle rouge entourant l'hexagone.
︡02d87554-5a88-43e3-be9a-a1871f7f855b︡{"html":"\n Tracez sur la même image un cercle rouge entourant l'hexagone.\n \n
\n"}︡ ︠9682cfcc-5bd2-45df-af35-c1d8276c6fc2︠ ︠4a0fca63-5448-4143-8390-237fc9bbe720︠ ︠8e778e7f-278c-46cb-ac0d-5e2dd111e314︠ ︠eb6965ae-778e-49ba-a174-6f1e174223b7︠