Pour i allant de 0 à n-1
faire :
...
les différentes instructions à répéter
...
Fin pour
range
sera un entier, nous verrons dans la suite qu'il peut en être autrement.
def somme(n:int)->int: #les int sont ici pour indiquer le typage des variables d'entrée et de sortie. Ici l'attribut est de type int et la sortie également
"""""La fonction somme renvoie la somme des n+1 premiers entiers naturels.
la fonction somme a pour attribut un entier (int) : n et renvoie un autre entier :S
Pour n=4 : S=0+1+2+3=10"""""
S=0 #initialisation de la somme à 0
for i in range(n):
S=S+i
return S
somme(20)
somme(20)
Cliquer sur cette adresse : http://pythontutor.com/visualize.html#mode=edit
Copier/coller votre code dans la fenêtre
puis cliquer sur Visualize Execution
pour observer la trace d'exécution de votre code pas à pas puis par des clics succéssifs sur le bouton forward
.
somme(n)
pour qu'en sortie on ait la somme des n+1 premiers entiers naturels.
def somme(n:int)->int: #les int sont ici pour indiquer le typage des variables d'entrée et de sortie. Ici l'attribut est de type int et la sortie également
"""""La fonction somme renvoie la somme des n+1 premiers entiers naturels.
la fonction somme a pour attribut un entier (int) : n et renvoie un autre entier :S
Pour n=4 : S=1+2+3+4=10"""""
S=0 #initialisation de la somme à 0
for i in range(n):
S=S+i
return S
#test de la fonction somme avec l'attribut 4
somme(4) #la réponse doit être 10
TableMulti()
qui reçoit en entrée un nombre entier n
compris entre 1 et 10 et affiche en sortie la table de
multiplication de ce nombre. Par exemple, si l’algorithme reçoit en entrée le nombre 7, il affichera la table de multiplication.
#Aide à l'affichage du résultat:
i=5
n=8
print("La multiplication de", i, "par", n, "est",i*n )
def tableMulti(n:int)->None:
"""Renvoie la table de multiplcation de n"""
return None
#test de la fonction :
tableMulti(5)
tableMulti(9)
TresorApo()
qui en entrée reçoit un entier n
et en sortie la somme présente sur le compte d'Apolline à sa nième année.
def tresorApo(n:int)->int:
return tresor
#teste de la fonction :
tresorApo(2) #la valeur de sortie doit être 306
tresorApo(10) #la valeur de sortie doit être 1210
range
peut prendre différents attributs. Dans cet exercice nous allons utiliser l'instruction :
for i in range(depart,arrivée,pas):
i
de départ
à arrivée-1
avec une incrémentation de pas
.
tresorApoB()
qui prend en entrée un entier n
et renvoie un entier.
def tresorApoB(n:int)->int:
return tresor
#Test de la fonction
tresorApoB(3) #la valeur de sortie doit être 204
Dans cet exercice nous allons donner à l'instruction range
un attribut de type list
.
Nous allons écrire une fonction estDansListe
qui prend en entrée une liste lst
et un entier n
et qui renvoie True
si l'entier est dans la liste et False
sinon.
Pour cela nous allons utiliser l'instruction :
for i in lst:
i
une valeur de la liste lst
en commençant par la première.
def estDansListe(lst:list,n:int)->bool:
test=False
return test
#test de la fonction
l=[0,1,2,3,4,5]
estDansListe(l,8) #doit renvoyer False
estDansListe(l,5) #doit renvoyer True
Tant que "condition : booléen"
faire :
...
les différentes instructions à répéter
...
Fin pour
while
sont vérifiées.
while
par une boucle for
.
def somme(n:int)->int:
"""""La fonction somme renvoie la somme des n+1 premiers entiers naturels.
la fonction somme a pour attribut un entier (int) : n et renvoie un autre entier :S
Pour n=4 : S=0+1+2+3=10"""""
S=0 #initialisation de la somme à 0
i=0
while i<n:
i+=1 #on aurait pu écrire aussi i=i+1; incrémente i de 1 à chaque passage dans la boucle
S=S+i
return S
#Test de la fonction :
somme(4)
Cliquer sur cette adresse : http://pythontutor.com/visualize.html#mode=edit
Copier/coller votre code dans la fenêtre
puis cliquer sur Visualize Execution
pour observer la trace d'exécution de votre code pas à pas puis par des clics succéssifs sur le bouton forward
.
somme(n)
pour qu'en sortie on ait la somme des n+1 premiers entiers naturels.
def somme(n:int)->int:
"""""La fonction somme renvoir la somme des n+1 premiers entiers naturel.
la fonction somme a pour attribut un entier (int) : n et renvoie un autre entier :S
Pour n=4 : S=0+1+2+3+4=10"""""
S=0 #initialisation de la somme à 0
i=1
while i<n:
i+=1 #on aurait pu écrire aussi i=i+1; incrémente i de 1 à chaque passage dans la boucle
S=S+i
return S
#Tester la fonction avec n=4, vous devriez avoir 10 en sortie
somme(4)
full
qui prend en argument une entrée du type float
indiquant le volume en litre du remplissage moyen quotidien a
et en sortie un entier indiquant le nombre de jours nécessaire au remplissage.
def full(a:float)->int:
return #test de la fonction
#test de la fonction
full(3.1) #la réponse devrait être 49
makeList
prend en entrée 3 valeurs entières deb
, fin
et max
correspondant respectivement à la plus petite valeur des nombres aléatoires, à la plus grande et à la valeur à ne pas dépasser en faisant la somme de ces nombres.
#à interpréter en premier
from random import *
Des instructions nécessaires à la réalisation du programme :
#obtenir un nombre entre deux entiers, 10 et 25 par exemple
randint(10,25)
#pour créer une liste vide qui s'appelle lst on écrit :
lst=[]
#pour rajouter un élément à cette liste par exemple 5 on écrit :
lst.append(5)
print(lst)
def makeList(deb:int,fin:int,max:int)->list:
return
makeList(2,50,250)
l=[0,1,2,3,4,5]
#Pour déterminer la longueur d'une liste on écrit :
len(l)
#Attention aux indices !
l[5]
def estDansListe(lst:list,n:int)->bool:
return
#test de la fonction
l=[0,1,2,3,4,5]
estDansListe(l,8) #doit renvoyer False
estDansListe(l,5) #doit renvoyer True
moy
elle ne prendra aucune entrée et donnera un élément de type float
en sortie.
#demander au joueur un nombre et l'affecter à une variable :
a=input("Donner un nombre")
print(a)
#la valeur renvoyée par input est de type str, il faudra donc écrire :
a=int(input("Donner un nombre"))
def moy()->float:
return
#test de la fonction
# essayer 10,12,14,8,12,6,8
#la sortie devrait être 10
moy()
Des instructions nécessaires à la réalisation du programme :
#la condition n'est pas égale s'écrit :
!=
#le test d'égalité s'écrit :
==
Ecrire la fonction plusOuMoins()
qui en entrée ne reçoit rien et en sortie renvoie le nombre d'essais qu'il a fallu pour trouver l'entier.
def pluOuMoins()->str:
return None
#tester le programme
pluOuMoins()
nbEssais
de type int à la fonction qui correspond au nombre d'essais maximum.
On nommera cette fonction plusOuMoinB
def plusOuMoinB(nbEssais:int)->str:
return
plusOuMoinB(10)