Langages et programmation (NSI 1)

Langages et programmation

1. Dans le programme JavaScript suivant, quelle est la notation qui délimite un bloc d'instruction exécuté à chaque passage dans le boucle while ?

[pastacode lang="javascript" manual="i%20%3D%200%3B%0Awhile%20(i%20%3C%2010)%20%7B%0A%20%20%20%20alert(i)%3B%0A%20%20%20%20i%20%3D%20i%20%2B%201%3B%0A%7D%0Aalert('Fin')%3B" message="" highlight="" provider="manual"/]

 
2. La fonction suivante calcule la racine carrée du double d'un nombre flottant.

[pastacode lang="python" manual="from%20math%20import%20sqrt%20%0A%0Adef%20racine_du_double(x)%3A%20%0A%20%20%20%20return%20sqrt(2*x)%20" message="" highlight="" provider="manual"/]

Quelle est la précondition sur les arguments de cette fonction?
3. Avec la définition de fonction capital_double suivante, que peut-on toujours affirmer à propos du résultat n retourné par la fonction?

[pastacode lang="python" manual="def%20capital_double%20(capital%2C%20interet)%3A%20%0A%20%20%20%20montant%20%3D%20capital%20%0A%20%20%20%20n%20%3D%200%20%0A%20%20%20%20while%20montant%20%3C%3D%202%20*%20capital%3A%20%0A%20%20%20%20%20%20%20%20montant%20%3D%20montant%20%2B%20interet%20%0A%20%20%20%20%20%20%20%20n%20%3D%20n%20%2B%201%20%0A%20%20%20%20return%20n%20" message="" highlight="" provider="manual"/]

 
4. Le programme Python suivant ne calcule pas toujours correctement le résultat de [latexpage] $x^y$ .

Parmi les tests suivants, lequel va permettre de détecter l'erreur ?

 

[pastacode lang="python" manual="def%20puissance%20(x%2Cy)%3A%20%0A%20%20%20%20p%20%3D%20x%0A%20%20%20%20for%20i%20in%20range%20(y%20-%201)%3A%20%0A%20%20%20%20%20%20%20%20p%20%3D%20p%20*%20x%0A%20%20%20%20return%20p%20" message="" highlight="" provider="manual"/]
5. On a écrit une fonction qui prend en paramètre une liste non vide et qui renvoie son plus grand élément.

Combien de tests faudrait-il écrire pour garantir que la fonction donne un résultat correct pour toute liste ?
6. La documentation de la bibliothèque random de Python précise :

random.randint(a, b)Renvoie un entier aléatoire N tel que a<= N <= b.

Quelle est l'expression Python permettant de simuler le tirage d'un dé à 6 faces après avoir exécuté import random?
7. Qu'affiche le programme suivant ?

[pastacode lang="python" manual="for%20i%20in%20range(1000)%3A%0A%20%20%20%20for%20j%20in%20range(1000)%3A%0A%20%20%20%20%20%20%20%20for%20k%20in%20range(1000)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20l%20in%20range(1000)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20print(%22Mille%20sabords%20!%22)" message="" highlight="" provider="manual"/]
8. Que faut il mettre à la place de ... pour que ce programme affiche dans l'ordre tous les nombres de 0 à 999 ?

[pastacode lang="python" manual="for%20i%20in%20range(10)%3A%0A%20%20%20%20for%20j%20in%20range(10)%3A%0A%20%20%20%20%20%20%20%20for%20k%20in%20range(10)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20..." message="" highlight="" provider="manual"/]
9. Que construit l'expression suivante :

[pastacode lang="python" manual="%3E%3E%3E%5Bi%20%25%203%20for%20i%20in%20range(10)%5D" message="" highlight="" provider="manual"/]
10. Soit la fonction suivante :

[pastacode lang="python" manual="def%20division_euclidienne(a%2C%20b)%3A%0A%20%20%20%20%22%22%22%20cha%C3%AEne%20de%20documentation%20%22%22%22%0A%20%20%20%20q%20%3D%200%0A%20%20%20%20r%20%3D%20a%0A%20%20%20%20while%20r%20%3E%3D%20b%3A%0A%20%20%20%20%20%20%20%20q%20%2B%3D%201%0A%20%20%20%20%20%20%20%20r%20%2B%3D%20b%0A%20%20%20%20return%20q%2C%20r" message="" highlight="" provider="manual"/]

Une chaîne de documentation satisfaisante pourrait être :
11. Le langage Python a été crée en :
12. Combien de fois la fonction print est-elle appelé dans le code suivant :

[pastacode lang="python" manual="n%20%3D%204%0Afor%20i%20in%20range(2%2C%20n)%3A%0A%20%20%20%20print(i)" message="" highlight="" provider="manual"/]
13. Quelle est la valeur affichée par le script suivant :

[pastacode lang="python" manual="x%20%3D%201%0Afor%20i%20in%20range(4)%3A%0A%20%20%20%20x%20%3D%20x%20%2Bi%0Aprint(x)" message="" highlight="" provider="manual"/]
14. [pastacode lang="python" manual="def%20f(x)%3A%0A%20%20%20%20for%20d%20in%20range(2%2C%20x)%3A%0A%20%20%20%20%20%20%20%20if%20x%20%25%20d%20%3D%3D%200%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20d" message="" highlight="" provider="manual"/]

Que retourne f(15) ?
15. Quelle sont les valeurs affichées par le code suivant ?

[pastacode lang="python" manual="x%20%3D%204%0Awhile%20x%20%3E%200%3A%0A%20%20%20%20y%20%3D%200%0A%20%20%20%20while%20y%20%3C%20x%3A%0A%20%20%20%20%20%20%20%20y%20%3D%20y%20%2B%201%0A%20%20%20%20%20%20%20%20x%20%3D%20x%20-%201%0Aprint(y)%0Aprint(x)%0A" message="" highlight="" provider="manual"/]
16. Voici une fonction écrite en Python, qui prend en paramètre un tableau T d’entiers positifs.

[pastacode lang="python" manual="def%20fonctionMystere(T)%3A%0A%20%20%20%20%20%20%20n%20%3D%20len(T)%0A%20%20%20%20%20%20%20m%20%3D%200%0A%20%20%20%20%20%20%20for%20i%20in%20range(n)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20if%20T%5Bi%5D%20%3E%20m%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20m%20%3D%20T%5Bi%5D%0A%20%20%20%20%20%20%20return(m)" message="" highlight="" provider="manual"/]
On appelle cette fonction avec l’instruction fonctionMystere([5, 1, 4, 7, 12, 6, 8]).
Que retourne-t-elle ?
17.
On considère un tableau T = [5, 1, 4, 7, 12, 6, 8] défini en Python.
On exécute l’instruction : T == T[:3] + T[3:]
Que retourne-t-elle ?
18.
 [latexpage] Voici un script écrit en Python, définissant une fonction puissance permettant de calculer $a^n$
, où a est un réel, et n un entier positif ou nul.
[pastacode lang="python" manual="def%20puissance(a%2C%20n)%3A%0A%20%20%20%20%20%20%20if%20n%20%3D%3D%200%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20return(1)%0A%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20return%20(a%20*%20puissance(a%2C%20n%20-%201))" message="" highlight="" provider="manual"/]

Si on exécute puissance(5, 3),  quel est le nombre total d’appels de la fonction puissance, appel initial compris ?

19. Que contient la liste l définie de la manière suivante :

[pastacode lang="python" manual="%3E%3E%3El%20%3D%20%5B%20i**2%20for%20i%20in%20range(9)%5D" message="" highlight="" provider="manual"/]
20. Que contient la liste l définie de la façon suivante :

[pastacode lang="python" manual="%3E%3E%3El%20%3D%20%5B%20i**2%20for%20i%20in%20range(9)%20if%20i%20%25%202%20%3D%3D%200%5D" message="" highlight="" provider="manual"/]

 

 

Retour en haut
Retour haut de page