• Aucun résultat trouvé

Qu’affiche le code suivant ? 1 dico s1 = set(dico) 3 print(s1) 2

N/A
N/A
Protected

Academic year: 2022

Partager "Qu’affiche le code suivant ? 1 dico s1 = set(dico) 3 print(s1) 2"

Copied!
2
0
0

Texte intégral

(1)

DUT Info Introduction à l’algorithmique et à la programmation 2020–2021 TD 6 - Structures de données avancées

Exercice 1. set et dict

1. Qu’affiche le code suivant ?

1 dico = {0: 4, 3: 5, 5: 8, 7: 7, 8: 9}

2 s1 = set(dico)

3 print(s1)

2. Créez l’ensembles2 des valeurs du dictionnaire dico. 3. Qu’affiche le code suivant ?

1 s1 | s2

2 s1 & s2

3 s1 <= s2

Exercice 2. Dictionnaires Que fait le programme ci-dessous ?

1 if __name__ == '__main__':

2 dico = dict()

3 for i in range(100):

4 dico[i] = list(range(i))

5 nb = int(input('Votre nombre:'))

6 if nb in dico:

7 print(dico[nb])

Exercice 3. Erreurs

Donnez la ou les erreurs dans le code suivant :

1 if __name__ == '__main__':

2 dico = dict()

3 dico['aaaa'] = 2

4 dico[(1, 2, 3)] = [1, 2, 3]

5 dico[[1, 2, 3]] = 5

6 s = (1, 2, 3)

7 print(s[0])

8 s[0] = 4

Exercice 4. Fréquences

1. Écrivez une fonction freq_chaine qui prend une chaîne de caractères en paramètre et renvoie un dictionnaire contenant pour chaque lettre de la chaîne son nombre d’occur- rences. Par exemple, freq_chaine('abbabba!') renverra {'a' : 3 , 'b' : 4, '!' : 1}.

2. Écrivez une fonction max_dic qui prend en paramètre un dictionnaire (dont les valeurs sont des naturels) et renvoie la clé correspondant à la plus grande valeur. Par exemple, max_dic({'a': 3, 'b' : 5 , 'c' : 0, 'd' : 10})renverra 'd'.

Page 1 / 2

(2)

DUT Info Introduction à l’algorithmique et à la programmation 2020–2021 3. Écrivez une fonctiontri_clesqui prend un dictionnaire (dont les valeurs sont des natu- rels) et renvoie la liste des clés du dictionnaire par ordre de valeurs décroissantes dans le dictionnaire. Par exemple, tri_cles({'a': 3, 'b' : 5 , 'c' : 0, 'd' : 10}) ren- verra['d', 'b', 'a', 'c']. Vous ne pouvez pas utilisersortednilist.sort.

Exercice 5. Lancement de dés

1. Écrivez un programme qui demande à l’utilisateur un entiernet réalisen lancers de deux dés, que l’on simulera à l’aide de la fonctionrandint. Le programme devra ensuite afficher chaque combinaison de chiffres obtenue avec le nombre de fois qu’elle s’est produite. On considère pour cette sous-question que deux lancers de dés donnant les mêmes chiffres mais dans un ordre différent ne sont paséquivalents.

2. Modifiez votre programme pour que les lancers équivalents soient fusionnés : on considère maintenant qu’obtenirapuisboubpuisaau cours de deux lancers correspond au même résultat.

3. Vos solutions aux deux sous-questions précédentes fonctionnent-elles encore si le joueur a le droit de lancer plus de deux dés (mais toujours le même nombre) à chaque essai ? Justifiez et proposez des corrections le cas échéant.

Exercice 6. Écrivez compression(dico), qui renvoie une représentation plus compacte d’un dictionnaire en regroupant dans des ensembles les clés ayant la même valeur et en échangeant les rôles des clés et des valeurs. Par exemple :

>>> compression({'t': 3, 'e': 2, 'd': 2, 'b': 1, 's': 0, 'c': 1, 'a': 1})

{0: {'s'}, 1: {'a', 'b', 'c'}, 2: {'d', 'e'}, 3: {'t'}}

Page 2 / 2

Références

Documents relatifs

Nous avons considéré la fonction F&lt; (x) dans un cercle G de rayon R dans lequel, par hypothèse, elle ne prend aucune des valeurs k i j du Tableau I, et nous avons appelé Mi(r)

DICTIONNAIRE DE L’ALBUM LE CODE DE LA ROUTE. LA GRAND-MERE la grand-mère

Si l'on conserve l'hypothèse que / est entière, on peut modifier la suite des points où elle prend des valeurs entières et énoncer le problème très général

Commission Educative : commission disciplinaire alternative du conseil de discipline, Présidée par le chef d’établissement ou son adjoint devant la quelle toi et

[r]

Dans le monde des affaires, on peut désigner un réseau social comme une communauté d’intérêts entre des acteurs d’une ou plu- sieurs organisations, au sein de laquelle les

[r]

On suppose dans cette question que (2/ω)D − A est sym´ etrique d´ efinie positive. sup´ erieure) de A, et on note J et G les matrices d’it´ eration des m´ ethodes de Jacobi