[PDF] exercices types Python PT



Previous PDF Next PDF







exercices types Python PT

2 Ecrire la suite d’instructions calculant la somme des cubes´ des chiffres de l’entier 1234 3 Ecrire une fonction´ somcube, d’argument n, renvoyant la somme des cubes des chiffres du nombre entier n 4 Trouver tous les nombres entiers inf´erieurs a 1000 ´egaux a la somme des cubes de leurs chiffres 5



Comprendre et utiliser des nombres entiers pour dénombrer

l’ordre des termes d’une somme et d'une multiplication, décomposer additivement un des termes pour calculer plus facilement, associer différemment les termes d’une somme et d'une multiplication Il sait multiplier par 10 un nombre inférieur à 100 Il estime un ordre de grandeur pour vérifier la vraisemblance d'un résultat



Chapitre 5 : Addition, Soustraction et Multiplication I

Une addition est une opération qui permet de calculer la somme de plusieurs nombres Les nombres que l'on additionne sont les termes de la somme Propriété : On peut modifier l'ordre des termes d'une somme, puis les regrouper, sans que cela ne change le résultat Exemple : A = 1,2 + 3,4 + 7,8 + 5,6 A = 1,2 + 7,8 + 3,4 + 5,6 A = 9 +9 A = 18



SUR LA SUITE DE FIBONACCI - Université de Montréal

et chaque terme de la suite est la somme des deux précédents Cette définition est dite récursive car F en partie gauche est définie en termes de F en



Ce que sait faire l’élève - Académie de Créteil

des termes d’une somme et d'une multiplication, décomposer additivement un des termes pour calculer plus facilement, associer différemment les termes d’une somme et d'une multiplication • Il utilise les faits numériques pour calculer plus rapidement • Il estime un ordre de grandeur pour vérifier la vraisemblance d'un résultat



NOM : Prénom : Note : 10

Quel est le signe du produit de 200 facteurs égaux à –9 ? : négatif Quelle est la somme de 48 termes égaux à –1 ? : -48 Quelle est la somme de 503 termes égaux à +2 ? : 1006 Exercice 4 : 2 points Calculer en regroupant les facteurs de façon astucieuse (faire apparaître les regroupements sur la feuille)



Oraux de mathématiques avec Python - Crans

terme de la suite de S telle que u 0 = x a Écrire une fonction suite(n,x) qui renvoie un(x) Tester la fonction pour quelques valeurs Tracer les premiers termes de la suite pour différentes valeurs de x Commenter b Tester pour n = 31 et x = 1,6616, pour n = 17 et x = 1,6617 Commenter c Montrer l’équivalence des trois assertions



Le nbre 10 000 s q1 - CanalBlog

- de comprendre le passage de l’arbre de 100 à l’arbre de 1000, de l’arbre de 1000 à l’arbre de 10 000, ; - de placer le nombre 1000 dans l’abaque Références aux socles de compétences : Formation mathématique, page 26 3 1 Les nombres 3 1 2 Organiser les nombres par familles



le nbre 10 000 s q3 valuation - CanalBlog

- de comprendre le passage de l’arbre de 100 à l’arbre de 1000, de l’arbre de 1000 à l’arbre de 10 000, ainsi que la relation « x10 » qui les relient Références aux socles de compétences : Formation mathématique, page 26 3 1 Les nombres 3 1 2 Organiser les nombres par familles



Épreuve de mathématiques CRPE 2015 groupe 2

Carole, partie en acancesv 10 jours, a laissé le robinet du laabvo de la salle de bain entrouvert Le débit de ce robinet était 3 litres par minute ( L'min) Dans la ville où habite Carole, le prix moyen de l'eau est 3;50 e le m3 Calculer les conséquences nancières de la négligence de Carole Déterminons le coût C de la fuite

[PDF] la somme de 2014 termes égaux ? -1

[PDF] La somme de deux entiers pairs est paire SVP

[PDF] la somme de deux multiples de 3 est toujours un multiple de 3

[PDF] La somme de deux nb entiers est 24 L'un des nb est le double de l'autre Quels

[PDF] la somme de deux nombres décimaux est 24

[PDF] La somme de deux nombres entiers est 24 L'un des nombres est le double de l'autre Quels sont ces deux nombres

[PDF] la somme de deux nombres relatifs

[PDF] La somme de deux produits

[PDF] la somme de trois entiers consécutifs est divisible par 3

[PDF] la somme de trois entiers consécutifs est un multiple de 3

[PDF] la somme de trois nombres consécutifs est 24 trouver ces trois nombres

[PDF] la somme de trois nombres consécutifs est 75 quels sont ces trois nombres

[PDF] La somme des carré est egale a 15313

[PDF] La somme des mesures de l'angle

[PDF] la somme du produit

Exercices types

Algorithmique et simulation num´erique

Oral Math´ematiques et algorithmique

Banque PT

Ces exercices portent sur les items 2, 3 et 5 du programme d"informatique des classes pr´eparatoires, fili`ere scientifique : - algorithmique (items 2 et 5) avec l"utilisation du langagePython; - ing´enierie num´erique et simulation (item 3) avec l"utilisation de l"environnement de simulation num´erique (biblioth`eques Numpy/Scipy/Matplotlib de Python ou atelier logiciel Scilab).

Ils peuvent ˆetre de longueur et de difficult´e in´egales. L"examinateur saura, bien sˆur,

adapter sa notation selon le sujet. Lors de l"´epreuve, un formulaire sera mis `a disposition ducandidat, sous forme de feuilles `a cˆot´e de l"ordinateur. Ce formulaire est fourni ici au format PDF :

MementoPythonScilab

BanquePTmai15.pdf.

Exercice 0

Cet exercice devra ˆetre fait avec le langage Python. `A chaque question, les instructions ou les fonctions

´ecrites devront ˆetre test´ees.

1. Soit l"entiern = 1234. Quel est le quotient, not´eq, dans la division euclidienne denpar 10? Quel est

le reste? Que se passe-t-il si on recommence la division par 10 `a partir deq? 2. ´Ecrire la suite d"instructions calculant la somme des cubesdes chiffres de l"entier 1234. 3. ´Ecrire une fonctionsomcube, d"argumentn, renvoyant la somme des cubes des chiffres du nombre entiern.

4. Trouver tous les nombres entiers inf´erieurs `a 1000 ´egaux `a la somme des cubes de leurs chiffres.

5. En modifiant les instructions de la fonctionsomcube, ´ecrire une fonctionsomcube2qui convertit

l"entiernen une chaˆıne de caract`eres permettant ainsi la r´ecup´eration de ses chiffres sous forme de

caract`eres. Cette nouvelle fonction renvoie toujours la somme des cubes des chiffres de l"entiern.

Exercice 1Cet exercice pourra ˆetre fait avec le langage Python(et ses biblioth`eques numpy, scipy, matplotlib)ou avec

le logiciel Scilab.`A chaque question, les instructions ou les fonctions ´ecrites devront ˆetre test´ees.

On cherche `a calculer une valeur approch´ee de l"int´egrale d"une fonction donn´ee par des points dont les

coordonn´ees sont situ´ees dans un fichier.

1. Le fichier"ex

001.csv", situ´e dans le sous-r´epertoiredatadu r´epertoire de travail, contient une

quinzaine de lignes selon le mod`ele suivant :

0.0;1.00988282142

0.1;1.07221264497

Chaque ligne contient deux valeurs flottantes s´epar´ees par un point-virgule, repr´esentant respective-

ment l"abscisse et l"ordonn´ee d"un point. Les points sont ordonn´es par abscisses croissantes.

Ouvrir le fichier en lecture, le lire et construire la listeLXdes abscisses et la listeLYdes ordonn´ees

contenues dans ce fichier.

2. Repr´esenter les points sur une figure.

3. Les points pr´ec´edents sont situ´es sur la courbe repr´esentative d"une fonctionf. On souhaite d´eterminer

une valeur approch´ee de l"int´egraleIde cette fonction sur le segment o`u elle est d´efinie.

´Ecrire une fonctiontrapeze, d"arguments deux listesyetxde mˆeme longueurn, renvoyant : n-1? i=1(xi-xi-1)yi+yi-1 2.

trapeze(LY,LX)renvoie donc une valeur approch´ee de l"int´egraleIpar la m´ethode des trap`ezes.

4.En utilisant la m´ethode d"int´egration num´eriquetrapzde la sous-biblioth`equescipy.integratedu

langage Python ou la m´ethodeinttrapdu logiciel Scilab, retrouver la valeur approch´ee de l"int´egraleI.

Exercice 2

Cet exercice devra ˆetre fait avec le langage Python.`A chaque question, les instructions ou les fonctions

´ecrites devront ˆetre test´ees.

On consid`ere le grapheGsuivant, o`u le nombre situ´e sur l"arˆete joignant deux sommets est leur distance,

suppos´ee enti`ere : 0 1 2 3 4 9 1 4 72
8 3

1. Construire la matrice (Mij)0?i,j?4,matrice de distancesdu grapheG, d´efinie par :

pour tous les indicesi,j,Mijrepr´esente la distance entre les sommetsietj, ou encore la longueur de l"arˆete reliant les sommetsietj. On convient que, lorsque les sommets ne sont pas reli´es, cette distance vaut-1. La distance du sommeti`a lui-mˆeme est, bien sˆur, ´egale `a 0. 2.

´Ecrire une suite d"instructions permettant de dresser `a partir de la matriceMla liste des voisins du

sommet 4. 3. ´Ecrire une fonctionvoisins, d"argument un sommeti, renvoyant la liste des voisins du sommeti. 4. ´Ecrire une fonctiondegre, d"argument un sommeti, renvoyant le nombre des voisins du sommeti, c"est-`a-dire le nombre d"arˆetes issues dei. 5.

´Ecrire une fonctionlongueur, d"argument une listeLde sommets deG, renvoyant la longueur du trajet

d´ecrit par cette listeL, c"est-`a-dire la somme des longueurs des arˆetes emprunt´ees. Si le trajet n"est

pas possible, la fonction renverra-1.

Exercice 3

Cet exercice devra ˆetre fait avec le langage Python.`A chaque question, les instructions ou les fonctions

´ecrites devront ˆetre test´ees.

Soit un entier naturelnnon nul et une listetde longueurndont les termes valent 0 ou 1. Le but de

cet exercice est de trouver le nombre maximal de 0 contigus danst(c"est-`a-dire figurant dans des cases

cons´ecutives). Par exemple, le nombre maximal de z´eros contigus de la listet1suivante vaut 4 :

i01234567891011121314 t1[i]011100010110000

1.´Ecrire une fonctionnombreZeros(t,i),prenant en param`etres une listet, de longueurn, et un indicei

compris entre 0 etn-1, et renvoyant : ?0, sit[i] = 1 le nombre de z´eros cons´ecutifs danst`a partir det[i] inclus, sit[i] = 0 Par exemple, les appelsnombreZeros(t1,4),nombreZeros(t1,1)etnombreZeros(t1,8)renvoient respectivement les valeurs 3, 0 et 1.

2. Comment obtenir le nombre maximal de z´eros contigus d"une listetconnaissant la liste des

nombreZeros(t,i)pour 0?i?n-1? En d´eduire une fonctionnombreZerosMax(t), de param`etret, renvoyant le nombre maximal de 0 contigus d"une listetnon vide. On utilisera la fonctionnombreZeros.

3. Quelle est la complexit´e de la fonctionnombreZerosMaxconstruite `a la question pr´ec´edente ?

4. Trouver un moyen simple, toujours en utilisant la fonctionnombreZeros, d"obtenir un algorithme plus

performant.

Exercice 4Cet exercice pourra ˆetre fait avec le langage Python(et ses biblioth`eques numpy, scipy, matplotlib)ou avec

le logiciel Scilab.`A chaque question, les instructions ou les fonctions ´ecrites devront ˆetre test´ees.

Soientnun entier naturel strictement positif etpun r´eel compris entre 0 et 1.

On consid`ereXetYdeux variables al´eatoires `a valeurs dansNsur un espace probabilis´e donn´e.Xsuit une

loi de Poisson de param`etreλ=npetYsuit une loi binomiale de param`etres (n,p).

1. D´efinir une fonctionPx, d"argumentsk,netp, renvoyant la valeur deP(X=k).

k! (factoriellek)s"obtient parfactorial(k)en Python(biblioth`equemath)etprod(1:k)en Scilab. D´eterminer, pourn= 30 etp= 0.1, la liste des valeurs deP(X=k) pourk?N,0?k?30.

2. D´efinir une fonctionPy, d"argumentsk,netp, renvoyant la valeur deP(Y=k).

On pourra utilisercombde la sous-biblioth`equescipy.miscen Python etbinomialen Scilab. D´eterminer, pourn= 30 etp= 0.1, la liste des valeurs deP(Y=k) pourk?N,0?k?30.

3. Soitk?N. On rappelle que, sous certaines conditions surnetp, la probabilit´eP(Y=k) peut ˆetre

approch´ee parP(X=k). D´eterminer une fonctionEcartd"argumentsnetp, renvoyant le plus grand des nombres|P(Y=k)-P(X=k)|, pour 0?k?n.

4. Soiteun r´eel strictement positif. D´eterminer une fonctionN, d"argumentseetp, renvoyant le plus

petit entierntel queEcart(n,p) soit inf´erieur ou ´egal `ae.

5. Faire l"application num´erique dans les quatre cas suivants :

-p= 0.075 avece= 0.008 ete= 0.005. -p= 0.1 avece= 0.008 ete= 0.005. Interpr´eter le dernier r´esultat.

Exercice 5

Cet exercice pourra ˆetre fait avec le langage Python(et ses biblioth`eques numpy, scipy, matplotlib)ou avec

le logiciel Scilab.`A chaque question, les instructions ou les fonctions ´ecrites devront ˆetre test´ees.

On consid`ere la fonctiongd´efinie sur [0,2[ par g(x) =?xpour 0?x <1

1 pour 1?x <2

1. D´efinir la fonctiong. Tracer sa courbe repr´esentative sur [0,2[, c"est-`a-dire la ligne bris´ee reliant les

points (x,g(x)) pourxvariant de 0 `a 1.99 avec un pas de 0.01.

2. D´efinir une fonctionfdonn´ee de mani`ere r´ecursive sur [0,+∞[ par

f(x) =?g(x) pour 0?x <2⎷ xf(x-2) pourx?2.

3. Tracer la courbe repr´esentative defsur [0,6].

4.

´Ecrire les instructions permettant de calculer, `a 10-2pr`es, la plus petite valeurα >0 telle que

f(α)>4.

Exercice 6Cet exercice devra ˆetre fait avec le langage Python.`A chaque question, les instructions ou les fonctions

´ecrites devront ˆetre test´ees.

1. On consid`ere le code Python de la fonctiondsuivante :

def d(n): L=[1] for nombre in range(2,n+1): if n%nombre==0:

L.append(nombre)

return L Quel est le r´esultat de l"appeld(4)? Puis de l"appeld(10)?

Que fait la fonctiond?

2. Undiviseur non-triviald"un entiernest un diviseur dendiff´erent de1et den.´Ecrire une fonction

DNT, d"argumentn, renvoyant la liste des diviseurs non-triviaux de l"entiern. 3.

´Ecrire une fonctionsommeCarresDNT, d"argumentn, renvoyant la somme des carr´es des diviseurs non-

triviaux de l"entiern. 4.

´Ecrire la suite des instructions permettant d"afficher tous les nombres entiers inf´erieurs `a 1000 et ´egaux

`a la somme des carr´es de leurs diviseurs non-triviaux. Quepeut-on conjecturer?

Exercice 7

Cet exercice devra ˆetre fait avec le langage Python.`A chaque question, les instructions ou les fonctions

´ecrites devront ˆetre test´ees.

Soitnun entier v´erifiantn?26. On souhaite ´ecrire un programme qui code un mot en d´ecalant chaque

lettre de l"alphabet denlettres. Par exemple pourn= 3, le d´ecalage sera le suivant : avant d´ecalageabcd......xyz apr`es d´ecalagedefg......abc

Le motoralensamdevient ainsirudohqvdp.

1. D´efinir une chaˆıne de caract`eres contenant toutes les lettres dans l"ordre alphab´etique (caract`eres en

minuscule). 2.

´Ecrire une fonctiondecalage, d"argument un entiern, renvoyant une chaˆıne de caract`eres contenant

toutes les lettres dans l"ordre alphab´etique, d´ecal´eesden, comme indiqu´e ci-dessus. 3.

´Ecrire une fonctionindices, d"arguments un caract`erexet une chaˆıne de caract`eresphrase, renvoyant

une liste contenant les indices dexdansphrasesixest une lettre dephraseet une liste vide sinon. 4.

´Ecrire une fonctioncodaged"arguments un entiernet une chaˆıne de caract`eresphrase, renvoyant

phrasecod´e avec un d´ecalage denlettres.

5. Comment peut-on d´ecoder un mot cod´e?

Exercice 8Cet exercice devra ˆetre fait avec le langage Python.`A chaque question, les instructions ou les fonctions

´ecrites devront ˆetre test´ees.

On poseM= 20 etm= 10.`A un nombrecquelconque, on associe la suite (un)n?0d´efinie par u

0= 0 etun+1=u2n+cpourn?0.

S"il existe, on notekle plus petit entier tel que l"on ait 0?k?met|uk|> M.

On d´efinit alors la fonctionfpar

f:c?→? ks"il existe m+ 1 sinon.

1. Donner le code d´efinissant la fonctionf.

2. Tracer l"allure de la courbe repr´esentative de la fonctionfsur [-2;2], en cr´eant une listeLXde

401 valeurs ´equir´eparties entre-2 et 2 inclus eten utilisant les fonctionsplotetshowde la sous-

biblioth`equematplotlib.pyplot.

3. Construire le tableau des valeursf(x+

?y) o`uxprend 101 valeurs comprises entre-2 et 0.5 etyprend

101 valeurs entre-1.1 et 1.1.On rappelle que le nombre complexe

?est repr´esent´e par1j.Par exemple, le complexe1 + 2 ?est repr´esent´e par1+2j.

4. Tracer l"image que code ce tableau.On pourra utiliser les fonctionsimshowetshowde la sous-

biblioth`equematplotlib.pyplot. Quels param`etres peut-on modifier pour obtenir une meilleure r´esolution?

Exercice 9

Cet exercice pourra ˆetre fait avec le langage Python(et ses biblioth`eques numpy, scipy, matplotlib)ou avec

le logiciel Scilab.`A chaque question, les instructions ou les fonctions ´ecrites devront ˆetre test´ees.

Dans cet exercice, avec Python on pourra utiliser la fonctionarrayde la biblioth`equenumpy,ainsi que la

fonctioneigde la sous-biblioth`equenumpy.linalg.Avec Scilab, on utiliseraspec.

1. Cr´eer deux matricesR=?1 2 34 5 6?

etS=((1 2 34 5 67 8 9)) et les faire afficher.

2. Cr´eer une fonctiontest, d"argumentM, renvoyant la valeurnsiMest une matrice carr´ee d"ordren

(entier naturel non nul), et z´ero dans tous les autres cas.

V´erifier la fonctiontestsurRet surS.

3. Le fichierex

006.txt, situ´e dans le sous-r´epertoiredatadu r´epertoire de travail, contient un tableau

de valeurs flottantes. Lire ce tableau dans le fichier et v´erifier qu"il correspond bien `a une matrice

carr´ee d"ordre 5 que l"on d´esignera parM1.

4. D´eterminer les valeurs propres de la matriceM1.

5. Cr´eer une fonctiondansIntervalle, d"arguments une listeLet deux r´eelsaetb, renvoyant la valeur

Truesi tous les ´el´ements de la listeLsont dans l"intervalle [a,b] etFalsesinon. V´erifier que toutes les valeurs propres de la matriceM1sont dans l"intervalle [0,1].

Exercice 10Cet exercice devra ˆetre fait avec le langage Python.`A chaque question, les instructions ou les fonctions

´ecrites devront ˆetre test´ees.

SoitNun entier naturel non nul. On cherche `a trier une listeLd"entiers naturels strictement inf´erieurs `aN.

1. ´Ecrire une fonctioncomptage, d"argumentsLetN, renvoyant une listePdont lek-i`eme ´el´ement d´esigne le nombre d"occurences de l"entierkdans la listeL.

2. Utiliser la listePpour en d´eduire une fonctiontri, d"argumentsLetN, renvoyant la listeLtri´ee

dans l"ordre croissant.

3. Tester la fonctiontrisur une liste de 20 entiers inf´erieurs ou ´egaux `a 5, tir´esal´eatoirement.

4. Quelle est la complexit´e temporelle de cet algorithme? La comparer `a la complexit´e d"un tri par

insertion ou d"un tri fusion.

Exercice 11

Cet exercice pourra ˆetre fait avec le langage Python(et ses biblioth`eques numpy, scipy, matplotlib)ou avec

le logiciel Scilab.`A chaque question, les instructions ou les fonctions ´ecrites devront ˆetre test´ees.

1. Deux param`etresbetwvalant respectivement 0.5 et 6.0, d´efinir trois fonctions d"une variablet

renvoyant des couples : ?p:t?→( cos(t) +bcos(wt),sin(t) +bsin(wt) ) v:t?→(-sin(t)-bwsin(wt),cos(t) +bwcos(wt) ) a:t?→(-cos(t)-bw2cos(wt),-sin(t)-bw2sin(wt) )

V´erifier ces fonctions sur un exemple.

p(t) = (x(t),y(t)) d´esigne la position dans le plan d"une masse ponctuelle mobile au cours du temps,

v(t) = (x?(t),y?(t)), sa vitesse, eta(t) = (x??(t),y??(t)), son acc´el´eration.

2. Construire la listeLdes pointsp(t), pourtvariant de-π`aπavec un pas de discr´etisationδtv´erifiant

δt= 0.01π.

3. Faire tracer dans le plan muni d"un rep`ere orthonormal laligne polygonale reliant les pointsp(t) de

la listeL.

4. D´efinir puis tester la fonctioncd"une variabletqui renvoie le couple des coordonn´ees du centre de

courbure donn´e par : c(t) =?x(t)-dy?(t), y(t) +dx?(t)?o`ud=x?(t)2+y?(t)2 x?(t)y??(t)-y?(t)x??(t).

5. Rajouter sur le graphique pr´ec´edent la ligne d´ecrite par les centres de courbure, avec la mˆeme

discr´etisation en temps.

6. Calculer la longueur de la ligne polygonale reliant les pointsp(t), pour diff´erents pas de discr´etisationδt.

Observer l"´evolution de cette longueur lorsqueδtdiminue.quotesdbs_dbs13.pdfusesText_19