E22 BTS SIO Sujet mai 2017
PREMIER TRAVAIL 30 minutes sur papier
Voici deux algorithmes écrits en Python2.7.
Après les avoir lus répondre aux questions.
from random import* def Info(M,i): nb=1 x=1 for j in range(1,len(M)-1): if M[i][j-1]==M[i][j]: nb=nb+1 if nb>2: x=0 return x def creat(): M=input("Saisir un tableau carre M ne contenant que des 0 ou 1 ") p=" M est OK " i=0 while i<len(M) and Info(M,i)==0: p= " M est refuse " i=i+1 print p |
QUESTIONS :
1.Proposer un M particulier de dimension 3 ×3.
2.Quel est le premier algorithme à utiliser ?
3. Qu'est-ce que len(M) ?
4. Quelle information donne le premier algorithme ( en haut de la page ) ?
5.Quand le premier algorithme retourne 0 qu'est-ce que cela veut dire ?
6. Que représente nb ?
7.On saisit:
M=[[0,1,0,0],[1,0,0,0],[1,1,0,0],[0,1,0,0]]
a. Dans ce cas que vaut nb ?
b. Que vaut x ?
c. Qu'obtient-on à l'affichage à la fin?
8. On saisit :
M=[[0,1,1,0],[1,0,0,1],[1,1,0,0],[0,1,0,0]] ?
a. Dans ce cas que vaut nb ?
b. Que vaut x ?
c. Qu'obtient-on à l'affichage à la fin?
9.Citer les types de variables utilisés.
10. Que signifie ?
if M[i][j-1]==M[i][j]:
SECOND TRAVAIL 30 minutes sur ordinateur
Soit la suite récurrente définie sur IN par :
u0 = 3
un + 1 = 2 un − 1 pour tout n dans IN
1.Écrire, si possible en Python 2.7, un algorithme qui donne un quand on saisit l'entier n.
2.Modifier cet algorithme pour que l'on obtienne la liste L
des 10 premiers termes de cette suite.
---------------------------------------