4éme Scientifiques 2021-2022
4éme Scientifiques 2021-2022
4éme Scientifiques 2021-2022
SECTIONS :
Mathématiques Sciences techniques Sciences expérimentales
ACTIVITE
Etablir un algorithme d’un problème qui calcule et affiche le périmètre et l’aire d’un
cercle de rayon donné de type entier.
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
I LES constantes
Une constante est une donnée dont la valeur reste inchangée au cours de l'exécution
d'un programme. Elle est caractérisée par son nom et sa valeur.
Exemple:
π = 3.14
g =9.8
II LES variables
Une variable est un objet dont la valeur peut être modifiée au cours de l'exécution d'un
programme. Elle est caractérisée par son nom, son type et son contenu.
Exemple:
Soit la suite d'instruction suivante :
A← 5
B←10
C←A
A←B
B←C
Objet Nature/Type
……… ……….
……… ………
………. ………..
N° Instruction A B C
1
2
3
4
5
A la fin de cette séquence : A ←………, B←…….., C←………
Le rôle de cette séquence est ………...…………………………………………………
………………………………………………………………………………………….
Opérateur Désignation
+ Addition
- Soustraction
* Multiplication
DIV Donne le quotient de la division
entière
MOD Donne le reste de la division
entière
En python : int
Div en python est : //
Mod en python est : %
Exemple :
Parmi les modules les plus importants, on note le module math qui regroupe un
ensemble de fonctions mathématiques définies sur le corps IR tels que la racine carré,
les fonctions trigonométriques, les fonctions log, exp…
Fonction Rôle
Algorithme Python
Tronc(x) trunc Supprime la partie
décimale d'un réel
Arrondi (x) Floor/ceil Donne l'entier le
plus proche de x
ABS (x) fabs Retourne la valeur
absolue de x
Sin (x) Sin Donne le sinus de x
Cos (x) Cos Donne le cosinus de
x
Exp (x) Exp Donne
l'exponentielle de x
Aléa ( Vi,Vf ) randint ( Vi,Vf ) Retourne un entier
aléatoire
appartenant à
l'intervalle [Vi ,
Vf].
Une variable de type booléen ne peut prendre que les deux valeurs logiques
représentées par 0 et 1 c à d faux (false) ou vrai (true).
En python : bool
Opérateur Signification
Algorithme python
() not Parenthèse
NON Negation
ET and Conjonction : les deux à la fois
OU or Disjonction : l'une ou l'autre ou les deux à la fois
Exemple
Pour chacun des cas suivants, évaluer les expressions logiques
Pour (a, b, c, d) = (-1, 3, 2,7)
Pour (a, b, c, d) = (8, 1,-4,3)
(a<b) ET (c>d)
NON (a<b) ET (c>d)
((a>b) OU (c≠a)) > (c=d)
((a+b <c) OU (a+d >c)) < ((b-c=a) ET (b-c≠a))
1) 2)
a-…………… a-…………………
b-…………… b-…………………
c-…………… c-…………………
d-…………… d-…………………
Une variable de type caractère peut contenir l'un des caractères suivants :
Les lettres de l'alphabet majuscules ("A", "B",………., "Z")
Les lettres de l'alphabet minuscules ("a", "b",………., "z")
Les chiffres ("0", "1", …………., "9")
Les signes de ponctuation (".", "?", ";"…..)
Les caractères spéciaux ("§", "%", "£"……)
L'espace est un caractère blanc (" ")
Remarques
Supposons que c est une variable de type caractère et que n est un entier compris
entre 0 et 255.
Algorithme python
ORD (c ) Ord(c) Renvoi le code ASCII du
caractère c
CHR (n) Chr(c) Renvoie le caractère dont le
code ASCII est n
Exemple
Une chaîne de caractères est une suite de N caractères avec N compris entre 0 et 255.
Si N = 0, on dit que la chaîne est vide.
En python : str
Exemple
"Bonjour" Chaîne de ….. caractères.
Taille : len(C)
Accès à un élément : C[index de l’élement] : Les index permis sont compris
entre 0 et len(C )-1
Accès à une partie des éléments avec notion de pas : C[i :j :k] : renvoie une
chaine stockant les éléments entre les deux positions i et j-1 en effectuant des
sauts d’amplitude k.
Répétition : C*n : l’opérateur * permet de créer une chaine contenant n copies
de C
Test de la nature de la chaine : alphabétique(isalpha), numérique(isidigit) ,
vide(isspace) ou alphanumérique(isalnum) :
Activité :
Écrire l’algorithme qui permet de calculer l’âge moyen de trois personnes.
Algorithme :
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
Remarques
Soit à calculer l’age moyenne de 1000 personnes ; on doit alors
Définir 1000 variables pour contenir les valeurs des âges.
Ecrire 1000 instructions de lecture.
Quelle sera donc la solution ???
Solution
Il est plus convenable de définir un espace mémoire de 1000 valeurs indicées. Cet
espace sera appelé un TABLEAU à une dimension (vecteur).
Exemple
L'instruction qui permet de lire le 2 ème élément du tableau Age est :
………………………………………………….
L'instruction qui permet d'afficher le 2ème élément du tableau Age est :
…………………………………………………..
l'instruction qui permet de calculer la somme du 1èr et du 3 ème élément du tableau
Age est : ………………………….
Déclaration en algorithmique
1ère méthode
Tableau de Déclaration des Objets (T.D.O)
Objet Type/Nature
Nom_Tableau Tableau de N Type_élément
2ème méthode
Tableau de Déclaration des Nouveaux Types (T.D.N.T)
Nom_Type_Tableau = Tableau de N Type_élément
I LES ENTREES :
Vocabulaire et syntaxe
Au niveau de l'algorithme
Forme générale: Exemple:
Ecrire ("commentaire sur A") La lecture de la moyenne (moy) d'un élève
Lire (A) s'écrit:
Ecrire ("Entrer la moyenne: ")
Lire (A)
Au niveau de python
Exemple 1:
A ← 25.5
B← (A * 2) / 3
La variable A reçoit la valeur réelle 25.5
La variable B reçoit le continu de la variable A multiplié par 2 et divisé par 3 c'est à
dire 17.0
Exemple 2:
X←X+1
X reçoit l'ancienne valeur de X incrémentée de 1.
Activité 1:
Exemple:
Ecrire ("La variable A =", A)
Vrai Traitement
Condition
Syntaxe
En algorithme En python
SI condition ALORS if condition :
Instruction 1 Instruction 1
Instruction 2 Instruction 2
… …
Instruction n Instruction n
FINSI
«SI il fait beau ALORS je ferai une promenade SINON je resterai à la maison »
Une structure de contrôle conditionnelle est de forme complète si selon la valeur de la
condition, on exécute le traitement 1 sinon le traitement 2.
Traitement 1
Vrai
Condition
Faux Traitement 2
Syntaxe :
En algorithme En python
SI condition ALORS if condition :
Instruction 1 Instruction 1
Instruction 2 Instruction 2
… …
Instruction n Instruction n
SINON else :
Instruction 1 Instruction 1
Instruction2 Instruction 2
… …
Instruction n Instruction n
FINSI
APPLICATION
Les instructions de la partie ALORS ainsi que celles de la partie SINON peuvent
être elles même des structures conditionnelles. Dans ce cas, on parle de structures
conditionnelles généralisées ou imbriquées.
Syntaxe :
En algorithme En Python
SI condition 1 ALORS if condition 1 :
Traitement1 Traitement 1
SINON elif condition 2 :
SI condition 2 ALORS Traitement 2
Traitement 2 elif condition 3:
SINON Traitement 3
SI condition 3 ALORS ………
Traitement 3 elif condition (n-1):
……… Traitement (n-1)
SINON else:
SI condition (n-1) ALORS Traitement n
Traitement (n-1)
SINON Traitement n
FINSI
L’application qu’on vient de réaliser, montre bien que, dans certains cas, la
structure conditionnelle généralisée est assez longue.
IL est parfois possible d’éviter l'utilisation de cette structure en utilisant plutôt la
structure conditionnelle à choix multiple qui permet d’avoir une meilleure lisibilité de
la solution.
La structure conditionnelle à choix multiple permet de faire un choix parmi
plusieurs possibilités (traitements).
Syntaxe
En algorithme En python
match Sélecteur :
SELON Sélecteur case Val1 :
Valeur(s)1 : Traitement 1 Traitement1
Valeur(s)2 :Traitement2 case Val2 | Val3 | Val4 :
Valeur(s)3 : Traitement 3 Traitement2
……… case Sélecteur if
Valeur(s)n : Traitement n Val5<=Sélecteur<=Val6 :
SINON Traitement n+1 Traitement3
FINSELON case _:
TraitementN
REMARQUES
I.1 DEFINITION :
Un résultat à une définition itérative complète s’il est la répétition d’une suite
d’instructions un nombre fini de fois connu à l’avance.
I.2 SYNTAXE :
En algorithme En python
Pour compteur de Vi à Vf (pas=P) faire For compteur in range (Vi ,Vf , pas) :
Instruction 1 Instruction 1
Instruction 2 Instruction 2
….. …..
Instruction N Instruction N
FinPour
Remarques :
Application :
Ecrire un algorithme puis la traduction en python d’un programme intitulé
PUISSANCE permettant de déterminer puis d’afficher la valeur de P qui représente
X à la puissance N (P = XN)
N.B. : On suppose que dans tous les cas les valeurs de X et N sont strictement
positives.
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
a) Activité 1 :
Ecrire un algorithme d’un programme nommé Racine_C permettant de saisir un
entier strictement positif et d’afficher sa racine carrée.
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
b) Définition :
Un résultat à une définition itérative à condition d’arrêt s’il est la répétition d’une
suite d’instructions jusqu’à ce qu’une condition d’arrêt passe à l’état vrai.
c) Syntaxe :
En Algorithme En Python
Remarque :
Dans cette boucle, les instructions du traitement seront tout d’abord exécutées puis la
condition sera évaluée. Si la condition est VRAI alors le traitement de la boucle ne se
répète plus (la boucle s’arrête) sinon ce traitement sera de nouveau exécuté et ainsi
de suite.
a) Activité 2 :
b) Syntaxe :
En algorithme En Python
Remarques :
Dans cette boucle, la condition sera tout d’abord évaluée. Si elle est VRAI alors le
traitement de la boucle sera exécuté sinon ce traitement ne s’exécute pas.
Pour les structures itératives à condition d’arrêt, le traitement de la boucle
«Répéter» s’exécute dans tous les cas au moins une fois alors que pour la boucle
«TantQue», on peut tomber dans un cas où le traitement correspondant ne
s’exécute aucune fois et ceci si dès la première évaluation la condition est fausse.
Introduction
I) LES PROCEDURES :
I-1 Definition:
Une procédure est un sous-programme qui peut avoir plusieurs résultats.
En algorithme En python
Procédure Nom_procédure ( paramètres) Def Nom_procedure( p1 ,p2…):
Début
Instruction1
Instruction1
Instruction2
Instruction2
InstructionN
InstructionN t
Fin Nom_procédure
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
Remarques
Lors de l’appel du sous programme, les paramètres effectifs sont substitués
aux paramètres formels. Cette substitution s’appelle passage des
paramètres
Les paramètres effectifs et les paramètres formels doivent s’accorder de
point de vue :
o …………………….
o …………………….
o …………………….
En python :
def permuter(a,b):
return b,a;
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
II-1 Définition :
Une fonction est un sous-programme qui renvoie (retourne) une seule valeur de type
simple. Ce type sera celui de la fonction
En algorithme En python
Fonction Nom_fonction ( paramètres) :type résultat Def Nom_Fonction (p1, p2...) :
Début
Traitement
Traitement Return (R)
Fin Nom_fonction
Une fonction possède presque la même structure qu’une procédure sauf qu’il
faut également préciser dans l’entête le type de la fonction qui est en fait le type du
résultat retourné par l’appel de la fonction. Il doit y avoir nécessairement dans la
partie des instructions de la fonction (généralement à la fin) une instruction permettant
d’affecter au nom de la fonction son résultat. (C’est-à-dire que le nom de la fonction
contient le résultat de son traitement).
L’objectif d’une fonction est de retourner une valeur résultat et non pas de modifier
les valeurs des paramètres effectifs. De ce fait, il est interdit de passer des paramètres
par variable dans les fonctions.
def somme(a,b):
s=a+b;
return(s);
Principe :
Exemple : L=[4,5,1,-6,2]
- Etape N°1 : le minimum de L est -6, on le permute avec 4 : L=[-6,5,1,4,2] ;
- Etape N°2 : le minimum de [5,1,4,2] est 1, on le permute avec 5 : L=[-6,1,
5,4,2]
- Etape N°3 : le minimum de [5,4,2] est 2, on le permute avec 5 : L=[-6,1,2,4,5]
- Etape N°4 : le minimum de [4,5] est 4, il est à sa bonne place.
Principe :
Implémentation :
Principe :
Implémentation :
Algorithme
En python :
Implémentation :
Algorithme
Soit le tableau T est trié d’une manière croissante.
Def dichotomie(t,x) :
d=0
f=len(t)-1
While 1 :
m=(d+f)//2
if t[m]==x :
return true
elif t[m]>x :
f=m-1
else :
d=m+1
if d>f : break
return False
Les interfaces graphiques (ou interfaces homme- machine) sont appelées GUI
(Graphical User Interface).Elles permettent à l'utilisateur d'interagir avec un
programme informatique, grâce aux différents objets graphiques (zone de
texte, case à cocher, bouton radio, bouton poussoir, menu, …).
La création d’une GUI peut se réaliser par la création des objets graphiques
(zone de texte, case à cocher, bouton radio, bouton poussoir, menu,…)
directement sur une fenêtre en utilisant un outil de conception et de création
d’interfaces graphiques (un éditeur graphique tel que Qt Designer ) qui
contient un éditeur d’interface utilisateur glisser et déposer (drag and drop)
C:\Users\....\AppData\Local\Programs\Python\Python-version\Lib\site-
packages\qt5_applications\Qt\bin.
import sys
from PyQt5 import QtWidgets, uic
app=QtWidgets.QApplication(sys.argv)
Fen =uic.loadUi("path du fichier crée par Qt Designer " )
app.exec()
sys.exit()
Application :
Programmer avec PyQt5 le bouton Fermer de l’interface créée par Qt
Designer (fenetre.ui)
Fichier Fenetre.py :
# Importations à faire pour réaliser une interface graphique
import sys
from PyQt5 import QtWidgets ,uic
# Définir une fonction
def Fermer ( ) :
f.close() # Fermer la fenêtre
App = QtWidgets.QApplication(sys.argv) # Création d'une instance de
QApplication
f = uic.loadUi("fenetre.ui" ) # Charger le fichier crée par Qt Designer
f.show() # Visualiser la fenêtre
# Signal (clicked) clic sur le bouton de fermeture BFermer
f.BFermer.clicked.connect(Fermer) # Appel de la fonction Fermer
App.exec_() # Exécution de l'application
def calculer():
l=float(ui.longeur.text())
L=float(ui.largeur.text())
s=l*L
ui.res.setText(str(s))
app=QtWidgets.QApplication(sys.argv)
ui=uic.loadUi("surface.ui" )
ui.show()
ui.calcul.clicked.connect(calculer)
app.exec()
sys.exit()
app=QtWidgets.QApplication(sys.argv)
ui=uic.loadUi("amis.ui" )
ui.show()
ui.amis.clicked.connect(affiche)
app.exec()
sys.exit()