December 17, 2025, Wednesday, 350

Języki Programowania 11

From MJanik

(Difference between revisions)
Jump to: navigation, search
(Blanked the page)
Line 1: Line 1:
 +
'''Zadanie przygotowawcze: Lista studentów – analiza ocen'''
 +
Napisz program w C++, który wczytuje listę studentów z pliku i oblicza średnią ocenę wszystkich wpisanych osób.
 +
Zadanie ma być krótkie, proste i ma zawierać:
 +
 +
* wczytywanie danych z pliku tekstowego,
 +
 +
* klasę reprezentującą pojedynczego studenta,
 +
 +
* klasę przechowującą dynamiczną tablicę wskaźników do obiektów Student,
 +
 +
* obliczenie średniej oceny,
 +
 +
* poprawne zwolnienie pamięci.
 +
 +
'''Format pliku wejściowego'''
 +
 +
Każdy wiersz pliku ma format:
 +
 +
imie nazwisko ocena
 +
 +
Przykład:
 +
 +
Anna Kowalska 4.5
 +
Piotr Nowak 3.0
 +
Julia Nowicka 5.0
 +
 +
'''Klasa Student'''
 +
 +
Pola:
 +
 +
name
 +
surname
 +
grade
 +
 +
Metody:
 +
 +
konstruktor ustawiający pola,
 +
 +
opcjonalnie print() wypisująca dane studenta.
 +
 +
 +
 +
'''Klasa StudentList'''
 +
 +
Pola:
 +
 +
Student** students
 +
int size
 +
 +
Wymagane metody:
 +
 +
void load(const std::string& filename)
 +
 +
wczytuje dane z pliku,
 +
 +
dynamicznie powiększa tablicę wskaźników,
 +
 +
dla każdej linii tworzy obiekt Student
 +
 +
double averageGrade()
 +
 +
liczy średnią ocen wszystkich studentów.
 +
 +
void printAll()
 +
 +
wypisuje dane studentów (opcjonalnie).
 +
 +
Destruktor
 +
 +
Ma usunąć wszystkie obiekty oraz samą tablicę.
 +
 +
'''Program główny'''
 +
 +
Utwórz obiekt:
 +
 +
StudentList list;
 +
 +
Wywołaj:
 +
 +
list.load("students.txt");
 +
list.printAll(); // opcjonalnie
 +
double avg = list.averageGrade();
 +
 +
Wypisz wynik na ekran.

Revision as of 10:26, 10 December 2025

Zadanie przygotowawcze: Lista studentów – analiza ocen

Napisz program w C++, który wczytuje listę studentów z pliku i oblicza średnią ocenę wszystkich wpisanych osób. Zadanie ma być krótkie, proste i ma zawierać:

  • wczytywanie danych z pliku tekstowego,
  • klasę reprezentującą pojedynczego studenta,
  • klasę przechowującą dynamiczną tablicę wskaźników do obiektów Student,
  • obliczenie średniej oceny,
  • poprawne zwolnienie pamięci.

Format pliku wejściowego

Każdy wiersz pliku ma format:

imie nazwisko ocena

Przykład:

Anna Kowalska 4.5
Piotr Nowak 3.0
Julia Nowicka 5.0

Klasa Student

Pola:

name
surname
grade

Metody:

konstruktor ustawiający pola,
opcjonalnie print() wypisująca dane studenta.


Klasa StudentList

Pola:

Student** students
int size

Wymagane metody:

void load(const std::string& filename)

wczytuje dane z pliku,

dynamicznie powiększa tablicę wskaźników,

dla każdej linii tworzy obiekt Student

double averageGrade()

liczy średnią ocen wszystkich studentów.

void printAll()

wypisuje dane studentów (opcjonalnie).

Destruktor

Ma usunąć wszystkie obiekty oraz samą tablicę.

Program główny

Utwórz obiekt:

StudentList list;

Wywołaj:

list.load("students.txt");
list.printAll(); // opcjonalnie
double avg = list.averageGrade();

Wypisz wynik na ekran.