• Aucun résultat trouvé

Informatique pour tous, première année

N/A
N/A
Protected

Academic year: 2022

Partager "Informatique pour tous, première année"

Copied!
2
0
0

Texte intégral

(1)

DS 4

Informatique pour tous, première année

Julien Reichert

Dans le premier exercice, nous allons manipuler des chaînes de caractères. On signale ou on rappelle qu'en Python, s.lower() donne la chaîne s dont tous les caractères correspondant à des lettres sont en bas de casse (c'est-à-dire minuscules) et s.upper() donne la chaîne s dont tous les caractères correspondant à des lettres sont en capitales (c'est-à-dire majuscules).

Exercice 1a : Quel est le problème du code ci-après ? Écrire une fonction correcte qui prend en entrée une chaîne de caractères et qui renvoie la même chaîne mais dont le premier et le dernier élément sont tous deux remplacés par un guillemet à l'anglaise (").

def remplace(s):

s[0] = "<"

s[-1] = ">"

Exercice 1b : Écrire une fonction qui détermine si une chaîne de caractères est en bas de casse sauf le premier caractère qui est en capitales. S'il existe des caractères ne correspondant pas à des lettres, on peut les ignorer (mais c'est uniquement le premier élément de la chaîne qui doit être en capitales).

Dans le deuxième exercice, nous allons faire un calcul de dénombrement. On considère un ensembleEànéléments (nsera xé) et un ensembleF àkéléments (ksera variable).

Exercice 2a : En notant u(n)k le nombre de surjections de E dans F dans le cas général, montrer la relation de récurrence suivante :

u(n)k =kn

k−1

X

i=0

k i

u(n)i .

Exercice 2b : Écrire une fonction en Python qui calcule u(n)k avecn et ken entrée. On créera un tableau des u(n)i pouride0 àk qu'on remplira pour les valeurs croissantes dei.

Dans le troisième exercice, nous allons écrire une variante de la méthode d'Euler un peu plus ecace que la version standard. La méthode en question pourrait être qualiée de semi-explicite, mais il ne s'agit pas de la méthode semi- explicite ocielle, qui semble après brève recherche plus complexe et non appliquée à des équations diérentielles d'ordre1avec une seule fonction à chercher.

Le principe est le suivant : l'approximation retenue dansy(xi+1) =y(xi) +Rxi+1

xi G(y(t), t)dtdeG(y(t), t)n'est pas G(y(xi), xi)mais la valeurG(y(xi+1), xi+1)qui est calculée d'abord par une méthode d'Euler explicite.

Exercice 3 : Écrire une fonction qui implémente cette méthode, avec pour arguments une fonction G décrivant une équation diérentielle, une condition initiale y0 et une liste d'abscisses X.

1

(2)

Dans le quatrième exercice, nous allons étudier une base de données. La structure associée est la suivante : Table Etudiants, avec les attributs Id (clé primaire avec auto-incrémentation, entier naturel), Classe (chaîne

de caractères), Nom (idem) et Prenom (idem). On peut considérer que (Nom, Prénom) est également une Table Examens, avec les attributs Id (clé primaire avec auto-incrémentation, entier naturel), Date (chaîneclé.

de caractères au format aaaa/mm/jj) et Matiere (chaîne de caractères).

Table Notes, avec les attributs Etudiant (entier naturel), Examen (entier naturel) et Note (entier naturel).

Le couple (Etudiant, Examen) est une clé.

Exercice : Écrire une requête SQL permettant de déterminer. . . . . . le nombre d'examens d'informatique [question 4a].

. . . la date du premier examen [question 4b].

. . . le nombre de matières où un examen a été enregistré [question 4c].

. . . le nombre de notes au-dessus de dix sur l'ensemble des examens passés en MPSI 2 [question 4d].

. . . la moyenne en informatique de Théo Dupont [question 4e].

. . . le nom de l'étudiant ayant la meilleure moyenne brute (on ne tient pas compte des matières, donc) [question 4f].

2

Références

Documents relatifs

Cependant, la formule « va être livré » est au passif : c’est une manière courante chez les juifs de dire les choses sans nommer Dieu par respect ; en fait la formule ici

Il faut donc faire défiler le message dans buffer, c'est à dire copier message dans buffer à partir d'une position donnée, afficher son contenu pendant un instant donné

Dans la liste des périodes possibles, on trouve avec une période telle que abcde les périodes bcdea, cdeab, deabc, eabcd ; d’où 10 périodes multiples de 2439, compatibles avec 41

D'autres façons de retirer des éléments dans une liste sont la méthode remove, qui cette fois-ci impose de préciser la valeur à retirer, avec une erreur si l'élément est absent,

Exercice 2 : Remplacer les lignes adéquates du programme ci-dessous mettant en œuvre l’algorithme du pivot de Gauss pour obtenir une version exacte sur des rationnels, en justifiant

Un coup de chiffres consiste en une épreuve de calcul mental au cours de laquelle les joueurs ont 45 secondes pour trouver une façon d’obtenir un nombre tiré aléatoirement entre 100

Le code de Huffman consiste à utiliser les fréquences d’apparition des caractères, que ce soit dans un texte ou dans l’absolu (en tenant tout de même compte de la langue),

Les nombres écrits ici n'ont pas la précision de la base dans leur représentation si elle est mentionnée juste avant dans les exercices demandant une conversion.. Déterminer