diff --git a/corrections/alg_chapitre_01/1.2.txt b/corrections/alg_chapitre_01/1.2.txt new file mode 100644 index 0000000000000000000000000000000000000000..ee4bbd0fe264ac68e9aef0f4d2e715c2a6ff1174 --- /dev/null +++ b/corrections/alg_chapitre_01/1.2.txt @@ -0,0 +1,64 @@ +# Ex 1.2 + +# DF + +login -> nom, prénom, mot_de_passe, adresse + +nom_aliment -> intitulé_sous_catégorie, unité + +intitulé_sous_catégorie -> intitulé_catégorie + +login, date_heure, nom_aliment -> quantité + +login, date_heure -> commentaire + + + +# Version 1 + +## Schémas + +Volontaire(login, nom, prénom, mot_de_passe, adresse) + login CLE +Aliment(nom_aliment, intitulé_sous_catégorie, unité) + nom_aliment CLE + intitulé_sous_catégorie <= SousCategorie.intitulé_sous_catégorie +SousCategorie(intitulé_sous_catégorie, intitulé_catégorie) + intitulé_sous_catégorie CLE + intitulé_catégorie <= Categorie.intitulé_catégorie +Categorie(intitulé_catégorie) + intitulé_catégorie CLE +Repas(login, date_heure, nom_aliment, quantité) + (login, date_heure, nom_aliment) CLE + login <= Volontaire.login + nom_aliment <= Aliment.nom_aliment +CommentaireRepas(login, date_heure, commentaire) + (login, date_heure) CLE + login <= Volontaire.login + + + +# Version 2 + +Volontaire(login, nom, prénom, mot_de_passe, adresse) + login CLE +Aliment(nom_aliment, intitulé_sous_catégorie, unité) + nom_aliment CLE + intitulé_sous_catégorie <= SousCategorie.intitulé_sous_catégorie + unité <= Unité.unité +Unité(unité) + unité CLE +SousCategorie(intitulé_sous_catégorie, intitulé_catégorie) + intitulé_sous_catégorie CLE + intitulé_catégorie <= Categorie.intitulé_catégorie +Categorie(intitulé_catégorie) + intitulé_catégorie CLE +Repas(login, date_heure) + (login, date_heure) CLE +RepasItem(login, date_heure, nom_aliment, quantité) + (login, date_heure, nom_aliment) CLE + (login, date_heure) <= Repas.(login, date_heure) +CommentaireRepas(login, date_heure, commentaire) + (login, date_heure) CLE + (login, date_heure) <= Repas.(login, date_heure) + login <= Volontaire.login \ No newline at end of file diff --git a/corrections/alg_chapitre_01/1.3.txt b/corrections/alg_chapitre_01/1.3.txt new file mode 100644 index 0000000000000000000000000000000000000000..78603ce7f9bf3f2685018c75bee0be86202a586e --- /dev/null +++ b/corrections/alg_chapitre_01/1.3.txt @@ -0,0 +1,9 @@ +# Ex 1.3 + +2. Un article est vendu par plusieurs fournisseurs. Son prix dépend du fournisseur + - correspond à la DF: {article, fournisseur} -> {prix, ...} +3. Un article peut être vendu à des prix différents par un même fournisseur + - correspond à la DF: {article, fournisseur, prix} -> {...} +4. Cette relation comporte deux clés. + - un article est vendu par un fournisseur à un prix donné + - un fournisseur ne peut vendre qu'un article \ No newline at end of file