Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Défi : Gestion des Données avec les Constructeurs et les Destructeurs | Constructeurs et Destructeurs
Quizzes & Challenges
Quizzes
Challenges
/
Programmation Orientée Objet en C++

bookDéfi : Gestion des Données avec les Constructeurs et les Destructeurs

Tâche

Swipe to start coding

Imaginez que vous développez un système de notation pour les étudiants. Vous devez créer une classe GradesManager qui gère une liste de notes d'étudiants.

Votre tâche consiste à implémenter un constructeur qui initialise un tableau dynamique de notes et une méthode size qui calcule la moyenne des notes. Le destructeur doit libérer automatiquement la mémoire allouée.

  1. Implémenter un constructeur en utilisant la syntaxe de liste d'initialisation :

    • Il doit prendre size comme paramètre.
    • Allouer un tableau dynamique d'entiers appelé grades avec la taille donnée.
    • Utiliser une boucle for avec la variable d'index i de 0 à size pour initialiser chaque note :
      • Affecter grades[i] = i + 1 comme valeurs d'exemple.
  2. Implémenter la méthode calculateAverage :

    • Créer une variable sum initialisée à 0.
    • Utiliser une boucle for avec la variable d'index i de 0 à size pour parcourir le tableau grades :
      • Ajouter grades[i] à sum.
    • Calculer la moyenne comme sum * 1.0 / size pour obtenir un résultat de type double.
    • Retourner la moyenne.
  3. Implémenter un destructeur :

    • Utiliser delete[] grades pour libérer la mémoire du tableau.
    • Afficher "Grades memory released." pour indiquer que la mémoire a été libérée.

Exemple

GradesManager(5).calculateAverage()3.0

Solution

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 8
single

single

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

Can you explain this in simpler terms?

What are the main takeaways from this?

Can you give me an example?

close

bookDéfi : Gestion des Données avec les Constructeurs et les Destructeurs

Glissez pour afficher le menu

Tâche

Swipe to start coding

Imaginez que vous développez un système de notation pour les étudiants. Vous devez créer une classe GradesManager qui gère une liste de notes d'étudiants.

Votre tâche consiste à implémenter un constructeur qui initialise un tableau dynamique de notes et une méthode size qui calcule la moyenne des notes. Le destructeur doit libérer automatiquement la mémoire allouée.

  1. Implémenter un constructeur en utilisant la syntaxe de liste d'initialisation :

    • Il doit prendre size comme paramètre.
    • Allouer un tableau dynamique d'entiers appelé grades avec la taille donnée.
    • Utiliser une boucle for avec la variable d'index i de 0 à size pour initialiser chaque note :
      • Affecter grades[i] = i + 1 comme valeurs d'exemple.
  2. Implémenter la méthode calculateAverage :

    • Créer une variable sum initialisée à 0.
    • Utiliser une boucle for avec la variable d'index i de 0 à size pour parcourir le tableau grades :
      • Ajouter grades[i] à sum.
    • Calculer la moyenne comme sum * 1.0 / size pour obtenir un résultat de type double.
    • Retourner la moyenne.
  3. Implémenter un destructeur :

    • Utiliser delete[] grades pour libérer la mémoire du tableau.
    • Afficher "Grades memory released." pour indiquer que la mémoire a été libérée.

Exemple

GradesManager(5).calculateAverage()3.0

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 8
single

single

some-alt