Sujet 6 - NSI 2022
Sujet NSI 2022 - Sujet 6
Exercice 1
- Sujet
- Correction
Écrire une fonction maxi
qui prend en paramètre une liste tab
de nombres entiers et renvoie un couple donnant le plus grand élément de cette liste, ainsi que l’indice de la première apparition de ce maximum dans la liste.
Exemple :
>>> maxi([1,5,6,9,1,2,3,7,9,8])
(9,3)
def maxi(tab):
val_max = tab[0]
pos_max = 0
for i in range(len(tab)):
if tab[i] > val_max:
val_max = tab[i]
pos_max = i
return (val_max, pos_max)
Exercice 2
- Sujet
- Correction
La fonction recherche
prend en paramètres deux chaines de caractères gene
et
seq_adn
et renvoie True
si on retrouve gene
dans seq_adn
et False
sinon.
Compléter le code Python ci-dessous pour qu’il implémente la fonction recherche
.
def recherche(gene, seq_adn):
n = len(seq_adn)
g = len(gene)
i = ...
trouve = False
while i < ... and trouve == ... :
j = 0
while j < g and gene[j] == seq_adn[i+j]:
...
if j == g:
trouve = True
...
return trouve
Exemples :
>>> recherche("AATC", "GTACAAATCTTGCC")
True
>>> recherche("AGTC", "GTACAAATCTTGCC")
False
def recherche(gene, seq_adn):
n = len(seq_adn)
g = len(gene)
i = 0
trouve = False
while i < n-g and trouve == False :
j = 0
while j < g and gene[j] == seq_adn[i+j]:
j += 1
if j == g:
trouve = True
i += 1
return trouve