Série Exercice N°01

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 15

Analyse Numérique Appliquée

Séries d’exercices en Python.


BEKHOUCHE M.R

Analyse Numérique Appliquée


Exercice 01:

Ecrivez un programme qui permet d’afficher le message suivant : « Hello World ! »

Exercice 02:

Ecrivez un programme permet de prendre le nom et prénom de l’utilisateur puis


affiche un message de salutation qui contient le nom, le prénom et une formule de
politesse.

Exercice 03:

Ecrivez un programme qui permet de prendre deux variables de l’utilisateur de type


int ou float puis affiche la somme des deux variables.

Exercice 04:

Ecrivez un programme qui calcule le pourcentage d’avancement d’un projet qui


contient plusieurs sous tâches, le programme doit afficher le nombre de tâche
réaliser et le pourcentage d’avancement dans la même ligne. L’utilisateur doit
fournir le nombre de tâche dans le projet et le nombre de tâche déjà réaliser.

Exercice 05:

Ecrivez un programme qui calcule le pourcentage d’avancement d’un projet qui


contient plusieurs sous tâches, le programme doit afficher le nombre de tâche qui
reste à réaliser et le pourcentage des tâches restantes dans la même ligne.
L’utilisateur doit fournir le nombre de tâche dans le projet et le nombre de tâche
déjà réaliser.

Exercice 06:

Ecrivez un programme qui permet de calculer le ratio de deux chiffres demander à


l’utilisateur, puis afficher le résultat avec les 10 premiers chiffres après la virgule.

Analyse Numérique Appliquée


Exercice 07:

Ecrivez un programme qui permet d’afficher une valeur aléatoire entre 0 et 1.

Exercice 08:

Ecrivez un programme qui permet d’afficher une valeur aléatoire entre 0 et 100.

Exercice 09:

Ecrivez un programme qui permet d’afficher une valeur aléatoire entre 3 000 et
5 000.

Exercice 10:

Ecrivez un programme qui permet de prendre une valeur strictement positive de


l’utilisateur puis affichez si cette valeur est supérieur ou inférieur une valeur
aléatoire x compris entre 0 et 100.

Exercice 11:

Ecrivez un programme qui permet de trouver le maximum entre trois nombres en


utilisant if-else.

Exercice 12:

Ecrivez un programme qui permet de trouver le maximum entre trois nombres en


utilisant if imbriquer.

Exercice 13:

Ecrivez un programme qui permet de vérifier si une valeur entrez par l’utilisateur
est PAIRE ou IMPAIRE en utilisant if-else.

Analyse Numérique Appliquée


Exercice 14:

Ecrivez un programme qui permet de vérifier si la valeur entrer par l’utilisateur est
une lettre ou non en utilisant if-else.

Exercice 15:

Ecrivez un programme qui permet de vérifier si la valeur entrer par l’utilisateur est
une valeur numérique ou non en utilisant if-else.

Exercice 16:

Ecrivez un programme qui permet de vérifier si la valeur entrer par l’utilisateur est
une lettre ou non en utilisant if-else.

Exercice 17:

Ecrivez un programme qui permet d’entrer une valeur entre 1 et 7 et affichez le


nombre de jour de la semaine correspondant de la semaine correspondant en
utilisant if-else.

Exercice 18:

Ecrivez un programme qui permet de trouver les racines d’une équation


quadratique

Remarque : (𝑎𝑥 2 + 𝑏𝑥 + 𝑐 = 0).

Exercice 19:

Ecrivez un programme qui permet de vérifier si une année entrer par l’utilisateur
est une année BISEXTILE ou non en utilisant if-else.

Remarque : l’année BISEXTILE est une année :


• Divisible par 4 mais non par 400.
• Divisible exactement par 400.

Analyse Numérique Appliquée


Exercice 20:

Ecrivez un programme pour saisir un caractère par l’utilisateur et de vérifier si la


valeur donner est un alphabet majuscule, un alphabet minuscule, un chiffre ou un
caractère spécial en utilisant if-else sachant que :
• Alphabet minuscule de ‘a’ à ‘z’.
• Alphabet majuscule de ‘A’ à ‘Z’.
• Chiffre de ‘0’ à ‘9’.
• Symbole sinon.

Exercice 21:

Ecrivez une boucle while qui permet d’afficher les chiffres de 1 à 20.

Exercice 22:

Ecrivez une boucle while qui permet d’afficher la séquence d’alphabet minuscule de
‘a’ à ‘z’.

Exercice 23:

Ecrivez une boucle while qui permet d’afficher la séquence d’alphabet majuscule de
‘A’ à ‘Z’.

Exercice 24:

Ecrivez un programme qui permet de prendre un mot de passe de l’utilisateur et de


vérifier que le mot de passe vérifier les conditions suivantes :
• Le mot de passe doit contenir au minimum 8 caractères.
• Le mot de passe doit contenir au minimum un lettre en majuscule.
• Le mot de passe doit contenir au minimum 2 symboles.

Analyse Numérique Appliquée


Exercice 25:

Ecrivez un programme avec la boucle while qui permet de déterminer la valeur de


‘n’ tel que :
𝑛(𝑛 + 1)(𝑛 + 2) dépasse 2 millions.

Exercice 26:

Ecrivez un programme avec la boucle while qui permet de déterminer la valeur de


‘n’ tel que :
1 + 2 + ⋯ + 𝑛 dépasse un million.

Exercice 27:

n=0
somme = 0
while somme < 10000 :
n += 1
# ?????
print(n)

Que doit on remplir dans # ????? pour avoir le terme dans lequel la somme 2 × 1 +
2 × 2 + 2 × 3 + ⋯ dépasse les 10000.
1. somme += 1 2. somme = somme * 2 3. somme += 2*n somme = 2*1 + 2*2 +
…+ 2*n

Exercice 28:

Ecrivez un programme qui permet d’afficher le plus petit entier ‘n’ tel que (n+1)(n+3)
dépasse 1e10

Exercice 29:

Ecrivez un programme qui permet d’afficher le plus petit entier ‘n’ tel que 4+5+..+n
soit inférieurs à 1²+2²+…+n².

Analyse Numérique Appliquée


Exercice 30:

Ecrivez une fonction qui permet de calculer la valeur de (n!) selon l’approximation
de Taylor sachant que :

𝑛! = 𝑛 ∗ (𝑛 − 1) ∗ (𝑛 − 2) ∗ … ∗ 1
{
0! = 1

Exercice 31:

Ecrivez une fonction qui permet de calculer la valeur de sin(x) selon


l’approximation de Taylor sachant que :

𝑥3 𝑥5 𝑥 2𝑛+1
sin(𝑥) = 𝑥 − + + ⋯ + (−1)𝑛 ∗ + 𝑥 2𝑛+1 𝜖(𝑥)
3! 5! (2𝑛 + 1)!

Exercice 32:

Ecrivez une fonction qui permet de calculer la valeur de (𝑒 𝑥 ) selon l’approximation


de Taylor sachant que :

𝑥2 𝑥3 𝑥𝑛
𝑒𝑥 = 1 + 𝑥 + + + ⋯+ + 𝑥 𝑛 𝜖(𝑥)
2 3! 𝑛!

Exercice 33:

Écrire un programme qui calcule avec une boucle while permet d’entrer un prix HT
(entrez o pour terminer le programme) et affichez sa valeur TTC sachant que la
TVA est de 19%.

Exercice 34:

L'utilisateur donne un entier positif et le programme annonce combien de fois de


suite cet entier est divisible par 2.

Analyse Numérique Appliquée


Exercice 35:

L'utilisateur donne un entier supérieur à 1 et le programme affiche, s'il y en a, tous


ses diviseurs propres sans répétition ainsi que leur nombre. S'il n'y en a pas, il
indique qu'il est premier. Par exemple :

01 Entrez un entier strictement positif : 12


02 Diviseurs propres sans répétition de 12 : 2 3 4 6 (soit 4 diviseurs
03 propres)
04 Entrez un entier strictement positif : 13
Diviseurs propres sans répétition de 13 : aucun ! Il est premier

Exercice 36:

Un gardien de phare va aux toilettes cinq fois par jour. Or les WC sont au rez-de-
chaussée…

Écrire une procédure (donc fonction sans ‘return’) ‘hauteurParcourue’ qui reçoit deux
paramètres, le nombre de marches du phare et la hauteur de chaque marche (en cm),
et qui affiche :

01 Pour x marches de y cm, il parcourt z.zz m par semaine.


On n'oubliera pas :
• qu'une semaine comporte 7 jours ;
• qu'une fois en bas, le gardien doit remonter ;
• que le résultat est à exprimer en m.

Exercice 37:

Un permis de chasse à points remplace désormais le permis de chasse traditionnel.


Chaque chasseur possède au départ un capital de 100 points. S'il tue une poule, il perd
1 point, 3 points pour un chien, 5 points pour une vache et 10 points pour un ami. Le
permis coûte 200 euros.
Écrire une fonction ‘amende’ qui reçoit le nombre de victimes du chasseur et qui
renvoie la somme due.
Utilisez cette fonction dans un programme principal qui saisit le nombre de victimes
et qui affiche la somme que le chasseur doit débourser.

Analyse Numérique Appliquée


Exercice 38:

Un programme principal saisit une chaîne d'ADN valide et une séquence d'ADN
valide (valide signifie qu'elles ne sont pas vides et sont formées exclusivement d'une
combinaison arbitraire de "a", "t", "g" ou "c").
Écrire une fonction ‘valide’ qui renvoie vrai si la saisie est valide, faux sinon.
Écrire une fonction ‘saisie’ qui effectue une saisie valide et renvoie la valeur saisie
sous forme d'une chaîne de caractères.
Écrire une fonction ‘proportion’ qui reçoit deux arguments, la chaîne et la séquence
et qui retourne la proportion de séquence dans la chaîne (c'est-à-dire son nombre
d'occurrences).
Le programme principal appelle la fonction ‘saisie’ pour la chaîne et pour la séquence
et affiche le résultat.
Exemple d'affichage :
01 chaîne : attgcaatggtggtacatg
02 séquence : ca
03 Il y a 10.53 % de "ca" dans votre chaîne.

Exercice 39:

Il s'agit d'écrire, d'une part, un programme principal et, d'autre part, une fonction
utilisée dans le programme principal.
La fonction ‘listAleaInt(n, a, b)’ retourne une liste de n entiers aléatoires dans [a ..
b] en utilisant la fonction ‘randint(a, b)’ du module ‘random’.
Dans le programme principal :
• construire la liste en appelant la fonction ‘listAleaInt()’ ;
• calculer l'index de la case qui contient le minimum ;
• échangez le premier élément du tableau avec son minimum.

Exercice 40:

Comme précédemment, il s'agit d'écrire, d'une part, un programme principal et,


d'autre part, une fonction utilisée dans le programme principal.
La fonction listAleaFloat(n) retourne une liste de n flottants aléatoires en utilisant la
fonction random() du module random.
Dans le programme principal :
• saisir un entier n dans l'intervalle : [2 .. 100] ;
• construire la liste en appelant la fonction listAleaFloat() ;
• afficher l'amplitude du tableau (écart entre sa plus grande et sa plus petite
valeur) ;
• afficher la moyenne du tableau.

Analyse Numérique Appliquée


Exercice 41:

Écrire une fonction ‘minMaxMoy()’ qui reçoit une liste d'entiers et qui renvoie le
minimum, le maximum et la moyenne de cette liste. Le programme principal
appellera cette fonction avec la liste [10, 18, 14, 20, 12, 16].

Exercice 42:

Saisir un entier entre 1 et 3999 et afficher en nombre romain.

Exercice 43:

Nombres parfaits et nombres chanceux.

• On appelle nombre premier tout entier naturel supérieur à 1 qui possède


exactement deux diviseurs, lui-même et l'unité.
• On appelle diviseur propre de n, un diviseur quelconque de n, n exclu.
• Un entier naturel est dit parfait s'il est égal à la somme de tous ses diviseurs
propres.
• Un entier tel que : (n+i+i^2) est premier pour tout dans [0, n-2] est
dit chanceux.

Écrire un module (parfait_chanceux_m.py) définissant quatre


fonctions : somDiv, estParfait, estPremier, estChanceux et un autotest.

• La fonction somDiv retourne la somme des diviseurs propres de son


argument.
• Les trois autres fonctions vérifient la propriété donnée par leur définition et
retourne un booléen. Si par exemple la fonction estPremier vérifie que son
argument est premier, elle retourne True, sinon elle retourne False.

La partie de test doit comporter quatre appels à la fonction verif permettant de


tester somDiv(12), estParfait(6), estPremier(31) et estChanceux(11).

Exercice 44:

Ecrire un algorithme Python qui renvoie la longueur d'une liste donnée sans
utiliser la méthode len().

Analyse Numérique Appliquée


Exercice 45:

Ecrire un algorithme Python qui renvoie la liste des diviseurs d'un entier donné.
Exemple si n = 18 l'algorithme renvoie la liste [1, 2, 3, 6, 9, 18].

Exercice 46:

Ecrire un algorithme en python qui renvoie la moyenne des termes d'une liste de
nombres.

Exercice 47:

En utilisant la méthode sort(), écrire un algorithme en python sous forme de


fonction qui prends en paramètre une liste L de nombres et qui renvoie le couple
(min , max) formé du minimum et du maximum de la liste.

Exercice 48:

Ecrire un algorithme python permettant de supprimer les éléments dupliqués d'une


liste.

Exercice 49:

Ecrire un programme Python sous forme de fonction Python qui prend en


paramètres deux listes et renvoie True si les deux listes ont au moins un élément
commun et False si non.

Exercice 50:

Ecrire un programme Python sous forme de fonction Python qui prend en


paramètres deux listes et renvoie la liste des éléments communs à ces deux listes.

Analyse Numérique Appliquée


Exercice 51:

Ecrire un programme en python qui permet de mélanger au hasard les éléments


d'une liste donnée.

Exercice 52:

Ecrire un algorithme en python sous forme de fonction qui prends en paramètre


une liste de nombres L et qui renvoie le minimum de la liste sans utiliser aucune
fonction prédéfinie en Python.

Exercice 53:

Ecrire un algorithme en python qui renvoie le nombre d'occurrences d'un élément a


dans une liste L donnée sans utiliser aucune fonction prédéfinie en Python.

Exercice 54:

Ecrire un programme en Python qui détermine la liste des mots ne contenant pas la
lettre 'a' dans un texte donné.

Exercice 55:

Ecrire un programme en Python qui détermine la liste des mots ne contenant pas la
lettre 'a' dans un texte donné.

Exercice 56:

Ecrire un algorithme Python qui détermine la liste des mots contenant au moins un
chiffre dans un texte T donné.

Analyse Numérique Appliquée


Exercice 57:

Ecrire un programme Python qui permet de déplacer les 3 premiers élément d'une
liste donnée et les placer à la fin de la liste.
Exemple si L = [25 , 13 , 11 , 1 , 4 , 31 , 18 , 6, 12 , 1 , 7], le programme renvoie : la liste:
[1 , 4 , 31 , 18 , 6, 12 , 1 , 7 , 25 , 13 , 11 ]

Exercice 58:

Dans cet exemple-ci, nous allons donc afficher une pyramide de dollars ($) de
hauteur 10.
Votre script devra donc afficher :
01 $
02 $ $
03 $ $ $
04 $ $ $ $
05 $ $ $ $ $
06 $ $ $ $ $ $
07 $ $ $ $ $ $ $
08 $ $ $ $ $ $ $ $
09 $ $ $ $ $ $ $ $ $
10 $ $ $ $ $ $ $ $ $ $

01 symbole = "$"
02 taille = 10
03 …
04 …
05 …
06 …

Exercice 59:

Dans cet exercice, vous allez devoir récupérer les éléments communs aux deux
listes dans une variable resultat.
Dans ce cas-ci, votre liste commune devra contenir les nombres 5, 7, et 10.
Vous pouvez utiliser les sets pour cet exercice.
01 liste_01 = [1, 5, 6, 7, 9, 10, 11]
02 liste_02 = [2, 3, 5, 7, 8, 10, 12]
03
04 resultat =

Analyse Numérique Appliquée


Exercice 60:

Dans cet exercice, vous allez devoir utiliser les compréhensions de liste, pour
remplacer une chaîne de caractères dans les éléments d'une liste par une autre
chaîne de caractères.
Dans cet exemple, nous devons remplacer 'Julie' par 'Julien' dans tous les éléments
de la liste.
La variable liste doit donc contenir les valeurs suivantes :

['Pierre', 'Marie', 'Julien', 'Adrien', 'Julien']

liste = ["Pierre", "Marie", "Julie", "Adrien", "Julie"]

nom_a_chercher = "Julie"
nouveau_nom = "Julien"

Exercice 61:

Dans cet exercice, nous allons vérifier si une phrase est un palindrome ou non.
Un palindrome est un mot ou une phrase qui peut se lire de la même façon dans les
deux sens.
Dans cet exemple-ci, nous avons le palindrome "Un rocu cornu".
Votre script devra donc vérifier si cette phrase est un palindrome, et donc dans ce
cas-ci, retourner la valeur True dans la variable resultat.
Pour inverser une liste sans la fonction reversed on peut utiliser la syntaxe [::-1].

Exercice 62:

Dans cet exercice vous devez créer une fonction convertir_hex_en_rgb qui prend en
paramètre une chaîne de caractères correspondant à un code couleur hexadécimal
(HEX). La fonction doit être capable de renvoyer le résultat de la conversion
hexadécimal en une nuance RGB (Red / Green / Blue) sous la forme d’un tuple.

Un code couleur hexadécimal commence toujours par un hashtag (#) puis 6


caractères compris dans la base 16. Chaque ensemble de 2 caractères forment une
nuance de couleur, les deux premiers pour le rouge, les deux suivants pour le vert
puis les deux derniers pour le bleu.

Analyse Numérique Appliquée


Exercice 63:

Le but de cet exercice est de calculer la somme de chaque chiffre d'un nombre.

Exemple : 209812 dans ce cas-ci, votre script doit retourner dans la variable resultat
le nombre 22 (2 + 0 + 9 + 8 + 1 + 2).

Exercice 64:

Dans cet exercice, nous allons créer une fonction cumul_valeurs qui permet de
renvoyer une liste contenant le cumul de toutes les valeurs d'une liste récupérée en
paramètre.
C'est-à-dire que chaque valeur de la liste renvoyée contient la somme de toutes les
valeurs précédentes de la liste récupérée en paramètre (la somme se fait de gauche à
droite).
Si la liste récupérée en paramètre est une liste vide, le résultat doit donc simplement
être une liste vide.
Exemples d'utilisation : cumul_valeurs([1, 4, 7]) revoie [1, 5, 12]
Ici on voit bien que le premier élément de la liste renvoyé est 1 car il n’y a pas de
valeur précédente (à gauche), le deuxième élément est 5 car on additionne les 2
premières valeurs de la liste (1 + 4), de même pour 12 avec les trois premières valeurs
(1 + 4 + 7).
Exemples :
>>> cumul_valeurs([1, 2, 3, 4, 5, 6])
[1, 3, 6, 10, 15, 21]
>>> cumul_valeurs([-5, -2, 7, 3])
[-5, -7, 0, 3]
>>> cumul_valeurs([])
[]

Exercice 65:

Le but de cet exercice et de remettre en ordre alphabétique les prénoms présents


dans la chaîne de caractères chaine = "Pierre, Julien, Anne, Marie, Lucien"
Vous devez créer une variable chaine_en_ordre qui, à la fin de l'exercice, doit
contenir la chaîne de caractères suivante :
"Anne, Julien, Lucien, Marie, Pierre".

Analyse Numérique Appliquée

Vous aimerez peut-être aussi