C++ & POO:

Programmation Orientée Objet (POO) & C++

1er cours

2nd cours

3ème cours

4ème cours: les pointeurs

5ème cours: Rappels, le pointeur this, les getters et setters

Algorithmie:

Cours 1: les exercices

Cours 2: quelques algorithmes de tri

Cours 3: les arbres

La récursivité: le calcul du factoriel

 

Algo 1:

Exercice : La recette du parfait cuisinier

Contexte : Vous dirigez un club de cuisiniers à votre école d'ingénieurs. Vous décidez de créer un programme pour aider les membres à choisir une recette en fonction des ingrédients qu'ils ont.

Partie 1 - Stockage des recettes :

  1. Créez une structure de données pour stocker plusieurs recettes. Chaque recette doit avoir un nom, une liste d'ingrédients nécessaires et une courte description. Par exemple :
    python
    { "nom": "Spaghetti Carbonara",
    "ingredients": ["spaghetti", "oeufs", "lardons", "parmesan"],
    "description": "Un plat italien délicieux avec des pâtes, des œufs, des lardons et du parmesan!" }

Partie 2 - Sélection d'une recette :

  1. Écrivez une fonction recette_disponible() qui prend en entrée une liste d'ingrédients disponibles et retourne toutes les recettes que l'on peut réaliser avec ces ingrédients. Par exemple :
    python
    recette_disponible(["spaghetti", "oeufs", "lardons", "parmesan", "tomate"])
    Cette fonction pourrait retourner la recette du "Spaghetti Carbonara".

Partie 3 - Bonus :

  1. Étendez votre programme pour qu'il puisse suggérer des recettes même si certains ingrédients manquent, mais indiquez combien et lesquels manquent. Cela aidera vos amis cuisiniers à savoir s'ils sont proches de pouvoir cuisiner un plat ou s'ils doivent se rendre au magasin.

Tests :

  • Ajoutez au moins 3 recettes dans votre structure de données.
  • Testez votre fonction avec différentes combinaisons d'ingrédients pour vous assurer qu'elle fonctionne correctement.

Conseils :

  • Commencez par créer une structure de données adaptée (par exemple, une liste de dictionnaires).
  • Parcourez chaque recette et comparez ses ingrédients avec ceux disponibles pour déterminer si la recette peut être réalisée.

Bonne cuisine et bon codage!

Cours 2: Mercredi 25 octobre: le cours est ici

Le programme:

#include <iostream>
using namespace std;

// Fonction récursive pour calculer le n-ième terme de la suite de Fibonacci
int fibonacci(int n) {
    if (n <= 1) {
        return n;
    }
    return fibonacci(n - 1) + fibonacci(n - 2);
}

int main() {
    int n;
    cout << "Entrez le rang du terme de la suite de Fibonacci que vous souhaitez obtenir: ";
    cin >> n;
    if (n < 0) {
        cout << "Veuillez entrer un nombre positif." << endl;
    } else {
        cout << "Le terme de rang " << n << " de la suite de Fibonacci est: " << fibonacci(n) << endl;
    }
    return 0;
}