ebook img

Algorithmes : Cours de mathématiques - Première année PDF

138 Pages·2016·8.48 MB·French
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Algorithmes : Cours de mathématiques - Première année

A L G O R I T H M E S C OURS DE MATHÉMATIQUES P REMIÈRE ANNÉE Exo7 Algorithmes Cerecueilregroupedifférentschapitressurlesmathématiquesenlienavecl’informatique. Sommaire 1 Algorithmes et mathématiques 1 1 PremierspasavecPython . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 Écrituredesentiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3 Calculsdesinus,cosinus,tangente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 4 Lesréels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5 Arithmétique–Algorithmesrécursifs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 6 Polynômes–Complexitéd’unalgorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2 Zéros des fonctions 29 1 Ladichotomie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2 Laméthodedelasécante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 3 LaméthodedeNewton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3 Cryptographie 41 1 LechiffrementdeCésar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 2 LechiffrementdeVigenère . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3 LamachineEnigmaetlescléssecrètes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 4 Lacryptographieàclépublique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 5 L’arithmétiquepourRSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 6 LechiffrementRSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 4 Calcul formel 67 1 PremierspasavecSage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 2 StructuresdecontrôleavecSage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 3 Suitesrécurrentesetpreuvesformelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 4 Suitesrécurrentesetvisualisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 5 Algèbrelinéaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 6 Courbesetsurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 7 Calculsd’intégrales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 8 Polynômes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 9 Équationsdifférentielles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 Chapitre 1 Algorithmes et mathématiques VidØo (cid:132) partie 1. Premiers pas avec Python VidØo (cid:132) partie 2. Ecriture des entiers VidØo (cid:132) partie 3. Calculs de sinus, cosinus, tangente VidØo (cid:132) partie 4. Les rØels VidØo (cid:132) partie 5. ArithmØtique (cid:21) Algorithmes rØcursifs VidØo (cid:132) partie 6. Polyn(cid:244)mes (cid:21) ComplexitØ d’un algorithme 1. Premiers pas avec Python Danscettepartieonvérified’abordquePythonfonctionne,puisonintroduiralesboucles(foretwhile), letestif ... else ...etlesfonctions. 1.1. Hello world! Pourcommencertestonssitoutfonctionne! Travaux pratiques 1. 1. Définirdeuxvariablesprenantlesvaleurs3et6. 2. Calculerleursommeetleurproduit. Voiciàquoicelaressemble: Code 1 (hello-world.py). >>> a=3 >>> b=6 >>> somme = a+b >>> print(somme) 9 >>> # Les rØsultats >>> print("La somme est", somme) La somme est 9 >>> produit = a*b >>> print("Le produit est", produit) Le produit est 18 Onretientleschosessuivantes: • Onaffecteunevaleuràunevariableparlesigneégal=. ALGORITHMES ET MATHÉMATIQUES 1.PREMIERS PAS AVEC Python 2 • Onafficheunmessageaveclafonctionprint(). • Lorsquequ’unelignecontientundièse#,toutcequisuitestignoré.Celapermetd’insérerdescommen- taires,cequiestessentielpourrelirelecode. Danslasuiteonomettralessymboles>>>.Voirplusdedétailssurlefonctionnementenfindesection. 1.2. Somme des cubes Travaux pratiques 2. 1. Pourunentier nfixé,programmerlecalculdelasommeS =13+23+33+···+n3. n 2. Définirunefonctionquipourunevaleur nrenvoielasommeΣ =1+2+3+···+n. n 3. Définirunefonctionquipourunevaleur nrenvoieS . n 4. Vérifier,pourlespremiersentiers,queS =(Σ )2. n n 1. Code 2 (somme-cubes.py(1)). n = 10 somme = 0 for i in range(1,n+1): somme = somme + i*i*i print(somme) Voicicequel’onfaitpourcalculerS avec n=10. n • Onaffected’abordlavaleur0àlavariablesomme,celacorrespondàl’initialisationS =0. 0 • Nousavonsdéfiniuneboucleavecl’instructionforquifaitvarier i entre1et n. • NouscalculonssuccessivementS1,S2,...enutilisantlaformulederécurrenceSi =Si−1+i3.Comme nous n’avons pas besoin de conserver toutes les valeurs des S alors on garde le même nom pour i toutes les sommes, à chaque étape on affecte à somme l’ancienne valeur de la somme plus i3 : somme = somme + i*i*i. • range(1,n+1)estl’ensembledesentiers{1,2,...,n}.C’estbienlesentiersstrictementinférieurs à n+1.Laraisonestquerange(n)désigne{0,1,2,...,n−1}quicontient néléments. 2. NoussavonsqueΣ =1+2+3+···+n= n(n+1) doncnousn’avonspasbesoindefaireuneboucle: n 2 Code 3 (somme-cubes.py(2)). def somme_entiers(n): return n*(n+1)/2 Unefonctioneninformatiqueestsimilaireàunefonctionmathématique,c’estunobjetquiprenden entréedesvariables(ditesvariablesformellesouvariablesmuettes,ici n)etretourneunevaleur(un n(n+1) entier,uneliste,unechaînedecaractères,...ici ). 2 3. Voicilafonctionquiretournelasommedescubes: Code 4 (somme-cubes.py(3)). def somme_cubes(n): somme = 0 for i in range(1,n+1): ALGORITHMES ET MATHÉMATIQUES 1.PREMIERS PAS AVEC Python 3 somme = somme + i**3 return somme 4. EtenfinonvérifiequepourlespremiersentiersS =(cid:128)n(n+1)(cid:138)2,parexemplepour n=12: n 2 Code 5 (somme-cubes.py(4)). n = 12 if somme_cubes(n) == (somme_entiers(n)**2): ’ print("Pour n=", n, "l assertion est vraie.") else: ’ print("L assertion est fausse !") Onretient: • Lespuissancessecalculentaussiavec**:52 s’écrit5*5ou5**2,53 s’écrit5*5*5ou5**3,... • Unefonctionsedéfinitpardef ma_fonction(variable):etsetermineparreturn resultat. • if condition: ... else: ...exécutelepremierblocd’instructionssilaconditionestvraie;sila conditionestfaussecelaexécutel’autrebloc. • Exempledeconditions — a < b: a< b, — a <= b: a(cid:54) b, — a == b: a= b, — a != b: a(cid:54)= b. • Attention!Ilestimportantdecomprendrequea==bvautsoitvraieoufaux(oncompare a et b)alors qu’aveca=bonaffectedans a lavaleurde b. • EnfinenPython(contrairementauxautreslangages)c’estl’indentation(lesespacesendébutdechaque ligne)quidéterminelesblocsd’instructions. π 1.3. Calcul de au hasard Nousallonsvoirqu’ilestpossibledecalculerlespremièresdécimalesdeπparlaméthodedeMonte-Carlo, c’est à dire avec l’aide du hasard. On considère le carré de coté 1,le cercle de rayon 1 centré à l’origine, d’équation x2+ y2=1,etlaportiondedisquedanslecarré(voirlafigure). (0,1) (0,0) (1,0) Travaux pratiques 3. 1. Calculerl’aireducarréetdelaportiondedisque. 2. Pour un point (x,y) tiré au hasard dans le carré, quelle est la probabilité que le point soit en fait danslaportiondedisque? 3. Tirerungrandnombredepointsauhasard,compterceuxquisontdanslaportiondedisque.

Description:
Ce recueil regroupe différents chapitres sur les mathématiques en lien avec l’informatique.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.