Ingénierie Logicielle et Python
Ingénierie Logicielle et Python
Objectifs du cours :
Apprendre les concepts de base de l'ingénierie logicielle et des modèles de cycle de vie
Explorer l'importance des bases de données dans le développement d'applications
Acquérir des compétences en programmation en Python de base
Concepts de base : abstraction contre décomposition, l'évolution des techniques d'ingénierie logicielle, Logiciel
cycle de vie du développement
Gestion de projet logiciel : planification de projet et programmation de projet
Tâche :
[Link] les exigences à partir des énoncés de problème
Chaînes : Création de chaînes et opérations de base sur les chaînes, méthodes de test de chaînes.
Concepts OOPS ; Classes et objets - Attributs - Héritage - Surcharge - Redéfinition - Masquage des données
Modules et paquets : Modules standard - Importation de son propre module ainsi que de modules externes Compréhension
Fonction puissante de Lamda dans la programmation Python utilisant des fonctions, des modules et des paquets externes
Ingénierie électronique et de communication
Travailler avec des données en Python : Affichage à l'écran - Lecture de données au clavier - Ouverture et fermeture de fichier -
Lecture et écriture de fichiers - Fonctions - Chargement des données avec Pandas - Numpy
Tâches :
[Link]
[Link] une liste de nombres et écrivez un programme pour vérifier si un élément particulier est présent ou non en utilisant
opérateurs d'appartenance.
[Link] votre nom et votre âge et écrivez un programme pour afficher l'année où vous aurez 100 ans.
lisez le rayon et la hauteur d'un cône et écrivez un programme pour trouver le volume d'un cône.
d. Écrivez un programme pour calculer la distance entre deux points en prenant l'entrée de l'utilisateur (indice : utilisez
Théorème de Pythagore
[Link] DE CONTRÔLE
[Link] votre identifiant email et écrivez un programme pour afficher le nombre de voyelles, de consonnes, de chiffres et d'espaces dans celui-ci
utiliser l'instruction if…elif…else.
[Link] un programme pour créer et afficher un dictionnaire en stockant les antonymes des mots. Trouver l'antonyme de a
mot particulier donné par l'utilisateur à partir du dictionnaire en utilisant une boucle while.
Écrivez un programme pour trouver la somme d'une série 1/1! + 2/2! + 3/3! + 4/4! +…….+ n/n!. (Entrée : n = 5, Sortie :
2.70833)
d. En théorie des nombres, un nombre abondant ou un nombre excessif est un nombre pour lequel la somme de ses diviseurs propres
les diviseurs sont supérieurs au nombre lui-même. Écrivez un programme pour déterminer si le nombre donné est abondant. (Entrée :
12, Somme des diviseurs de 12 = 1 + 2 + 3 + 4 + 6 = 16, somme des diviseurs 16 > nombre original 12)
3 : LISTE
[Link] une liste de nombres et imprimez les nombres divisibles par x mais pas par y (Supposez que x = 4 et y = 5).
[Link] une liste de nombres et imprimez la somme des entiers impairs et des entiers pairs de la liste. (Ex : [23, 10, 15, 14,
63], la somme des nombres impairs = 101, la somme des nombres pairs = 24)
[Link] une liste de nombres et imprimez les nombres présents à des positions d'index impaires. (Ex : [10, 25, 30, 47, 56, 84, 96], Le
nombres en position d'index impair : 25 47 84).
lisez une liste de nombres et supprimez les nombres dupliqués. (Ex : Entrez une liste avec des doublons
elements: 10 20 40 10 50 30 20 10 80, The unique list is: [10, 20, 30, 40, 50, 80])
4 : TUPLE
a. Étant donné une liste de tuples. Écrivez un programme pour trouver des tuples dont tous les éléments sont divisibles par K à partir d'une liste de
tuples. test_list = [(6, 24, 12), (60, 12, 6), (12, 18, 21)], K = 6, Output : [(6, 24, 12), (60, 12, 6)]
[Link] une liste de tuples. Écrivez un programme pour filtrer tous les tuples de caractères majuscules de la liste donnée de tuples.
(Input: test_list = [(“GFG”, “IS”, “BEST”), (“GFg”, “AVERAGE”), (“GfG”, ), (“Gfg”, “CS”)], Output :
[('GFG', 'EST', 'LE MEILLEUR')]}
[Link] un tuple et une liste en entrée, écrivez un programme pour compter les occurrences de tous les éléments de la liste dans le tuple.
(Input : tuple = ('a', 'a', 'c', 'b', 'd'), list = ['a', 'b'], Output : 3)
5 : RÉGLER
a. Écrivez un programme pour générer et imprimer un dictionnaire qui contient un nombre (entre 1 et n) sous la forme (x,
x*x).
b. Écrivez un programme pour effectuer l'union, l'intersection et la différence en utilisant l'ensemble A et l'ensemble B.
c. Écrivez un programme pour compter le nombre de voyelles en utilisant des ensembles dans la chaîne donnée (Entrée : "Bonjour le monde", Sortie : Nombre de
vowels : 3)
d. Écrivez un programme pour former une chaîne concaténée en prenant les caractères inhabituels de deux chaînes en utilisant des ensembles
concept (Input : S1 = "aacdb", S2 = "gafd", Output : "cbgf").
Ingénierie des Électroniques et de la Communication
6: DICTIONARY
a. Écrivez un programme pour effectuer les opérations suivantes :
[Link]éer un dictionnaire vide avec la méthode dict()
[Link] des éléments un à la fois
[Link] à jour la valeur de la clé existante
[Link] un élément en utilisant une clé et aussi la méthode get()
[Link] une valeur clé en utilisant la méthode del()
b. Écrire un programme pour créer un dictionnaire et appliquer les méthodes suivantes :
méthode [Link]()
méthode [Link]()
méthode [Link]()
c. Étant donné un dictionnaire, écrivez un programme pour trouver la somme de tous les éléments dans le dictionnaire.
d. Écrivez un programme pour fusionner deux dictionnaires en utilisant la méthode update().
7: CHAÎNES
[Link] a string, write a program to check if the string is symmetrical and palindrome or not. A string is said
être symétrique si les deux moitiés de la chaîne sont identiques et une chaîne est dite une chaîne palindrome si
une moitié de la chaîne est le revers de l'autre moitié ou si une chaîne apparaît identique lorsqu'elle est lue en avant ou en arrière.
[Link] un programme pour lire une chaîne de caractères et compter le nombre de voyelles et imprimer toutes les lettres sauf 'e' et 's'.
[Link] a program to read a line of text and remove the initial word from given text. (Hint: Use split() method,
L'Inde est mon pays.
d. Écrivez un programme pour lire une chaîne de caractères et compter combien de fois chaque lettre apparaît. (Histogramme).
9 : FONCTIONS INTÉGRÉES
a. Écrire un programme pour démontrer le fonctionnement des fonctions statistiques intégrées mean(), mode(),
médiane() en important la bibliothèque statistiques.
[Link] un programme pour démontrer le fonctionnement des fonctions trigonométriques intégrées sin(), cos(), tan(), hypot(),
degrés(), radians() en important le module math.
c. Écrivez un programme pour démontrer le fonctionnement des fonctions logarithmiques et de puissance intégrées exp(), log().
log2(), log10(), pow() en important le module math.
d.Rédigez un programme pour démontrer le fonctionnement des fonctions numériques intégrées ceil(), floor(), fabs(),
factoriel(), pgcd() en important le module math.
b. Créez une classe SavingsAccount qui se comporte exactement comme un BankAccount, mais qui a également un taux d'intérêt.
méthode qui augmente le solde du montant approprié des intérêts (Indice : utilisez l'héritage).
Ingénierie Électronique et de Communication
c. Écrivez un programme pour créer une classe d'employé et stocker le nom de l'employé, l'identifiant, l'âge et le salaire en utilisant le
constructeur. Affichez les détails de l'employé en invoquant la méthode employee_info() et en utilisant également le dictionnaire (dict
).
d. Les modificateurs d'accès en Python sont utilisés pour modifier la portée par défaut des variables. Écrivez un programme pour
{"public":"démontrer le modificateur d'accès public","private":"démontrer le modificateur d'accès privé","protected":"démontrer le modificateur d'accès protégé"}
Références :
[Link] Mall, “Fundamentals of Software Engineering”, 5th Edition, PHI, 2018.
[Link], Shamkant, B. Navathe, “Systèmes de bases de données”, Pearson Education, 6e édition, 2013. [Link]
Thareja, "Programmation Python - En utilisant l'approche de résolution de problèmes", Oxford Press, 1ère édition, 2017.
4. Larry Lutz, « Python pour les débutants : Guide étape par étape pour apprendre la programmation Python »
Plateforme d'édition indépendante CreateSpace, Première édition, 2018
[Link]://[Link]/se/
[Link]://[Link]/vlabs-dev/labs/dblab/[Link]
[Link]://[Link]