Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Sfida: Gestione Dei Dati Con Costruttori e Distruttori | Costruttori e Distruttori
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
OOP in C++

bookSfida: Gestione Dei Dati Con Costruttori e Distruttori

Compito

Swipe to start coding

Immagina di dover realizzare un sistema di gestione dei voti degli studenti. È necessario creare una classe GradesManager che gestisca un elenco di voti degli studenti.

L'obiettivo è implementare un costruttore che inizializzi un array dinamico di voti e un unico metodo che calcoli la media dei voti. Il distruttore dovrà rilasciare automaticamente la memoria allocata.

  1. Implementazione di un costruttore utilizzando la sintassi dell'initializer list:

    • Deve accettare size come parametro.
    • Allocare un array dinamico di interi chiamato grades della dimensione specificata da size.
    • Utilizzare un ciclo for con la variabile indice i da 0 a size per inizializzare ciascun voto:
      • Assegnare grades[i] = i + 1 come valori di esempio.
  2. Implementazione di un unico metodo calculateAverage:

    • Creare una variabile sum inizializzata a 0.
    • Utilizzare un ciclo for con la variabile indice i da 0 a size per scorrere l'array grades:
      • Sommare grades[i] a sum ad ogni iterazione.
    • Calcolare la media come sum * 1.0 / size per ottenere un risultato di tipo double.
    • Restituire la media.
  3. Implementazione di un distruttore:

    • Utilizzare delete[] grades per rilasciare la memoria allocata per l'array.
    • Stampare "Grades memory released." per indicare che la memoria è stata liberata.

Esempio

GradesManager(5).calculateAverage()3.0

Soluzione

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 8
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

close

bookSfida: Gestione Dei Dati Con Costruttori e Distruttori

Scorri per mostrare il menu

Compito

Swipe to start coding

Immagina di dover realizzare un sistema di gestione dei voti degli studenti. È necessario creare una classe GradesManager che gestisca un elenco di voti degli studenti.

L'obiettivo è implementare un costruttore che inizializzi un array dinamico di voti e un unico metodo che calcoli la media dei voti. Il distruttore dovrà rilasciare automaticamente la memoria allocata.

  1. Implementazione di un costruttore utilizzando la sintassi dell'initializer list:

    • Deve accettare size come parametro.
    • Allocare un array dinamico di interi chiamato grades della dimensione specificata da size.
    • Utilizzare un ciclo for con la variabile indice i da 0 a size per inizializzare ciascun voto:
      • Assegnare grades[i] = i + 1 come valori di esempio.
  2. Implementazione di un unico metodo calculateAverage:

    • Creare una variabile sum inizializzata a 0.
    • Utilizzare un ciclo for con la variabile indice i da 0 a size per scorrere l'array grades:
      • Sommare grades[i] a sum ad ogni iterazione.
    • Calcolare la media come sum * 1.0 / size per ottenere un risultato di tipo double.
    • Restituire la media.
  3. Implementazione di un distruttore:

    • Utilizzare delete[] grades per rilasciare la memoria allocata per l'array.
    • Stampare "Grades memory released." per indicare che la memoria è stata liberata.

Esempio

GradesManager(5).calculateAverage()3.0

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 8
single

single

some-alt