10-customer-list/mainpage.h
github-classroom[bot] f12b523950
Initial commit
2024-12-10 06:58:39 +00:00

80 lines
3.8 KiB
C

/** @file mainpage.h
*
* @brief Beschreibung der Aufgabe Customer List.
*/
/** @mainpage Customer List
*
* @author Peter Bauer, Stefan Schraml
*
* German variant below
*
* @section intro Introduction
* Your task is to implement a customer list. The focus is on administrative functions
* (initializing, adding customers to the list) and simple overview functions
* (list length, listing customers with specific revenues).
*
* @section datastructures Data Structures
* @subsection CustomerList
* The `CustomerList` has a maximum of 13 entries.
* The `CustomerList` is a struct with the following fields:
* - `length` (int): The number of entries in the list.
* - `customers` (array of pointers to `struct CustomerListEntry`): see below.
*
* @subsection CustomerListEntry
* A `CustomerListEntry` contains all data related to a customer, including:
* - `id` (int): The unique customer ID.
* - `customer_name` (const pointer to a char (const char* customer_name)): The name of the customer.
* - `revenue` (int): The revenue generated with the customer, measured in €1000.
*
* @section Functions
* - `init_customer_list()`: Sets the number of entries to 0.
* - `get_length()`: Returns the number of entries in the list.
* - `create_customer()`: Creates a new customer.
* - `add_customer()`: Adds a single entry to the list.
* - `add_customers()`: Adds multiple entries to the list.
* - `get_customer_with_index()`: Retrieves the customer at a specific index in the list.
* - `get_customer_with_id()`: Searches for a customer with a specific ID.
* - `get_customers_with_revenue()`: Finds customers within specific revenue bounds.
* - `get_customer_with_highest_revenue()`: Finds the customer with the highest revenue.
* - `get_customer_with_lowest_revenue()`: Finds the customer with the lowest revenue.
* - `get_top_n_customers_revenue()`: Finds the top `n` customers with the highest revenue.
* - `get_bottom_n_customers_revenue()`: Finds the bottom `n` customers with the lowest revenue.
* - `get_customer_id()`: Retrieves the ID of a customer.
*
*
* @section intro_de Einführung
* Sie haben die Aufgabe eine Kundenliste zu implementieren. Wir beschränken uns auf Verwaltungsfunktionen
* (Initialisieren, Kunden in die Liste einzutragen) und kleine Überblicksfunktionen
* (Länge der Liste, Auflisten von Kunden mit bestimmten Umsätzen).
*
* @section datastructures_de Die Datenstrukturen
* @subsection CustomerList
* Die CustomerList hat eine maximale Anzahl von 13 Einträgen.
* Die CustomerList ist ein struct mit den Feldern
* - length (int)
* - customers (Array von Pointern auf ein struct CustomerListEntry): siehe unten
*
* @subsection CustomerListEntry
* Ein CustomerListEntry hält alle Daten, die zu einem Kunden gehören, welche sind:
* - id (int): Die eindeutige Kundennummer.
* - customer_name (const Pointer auf ein char (const char* customer_name))
* - revenue (int): Der Umsatz, der mit dem Kunden erzielt wurde in 1000 €
*
* @section Die Funktionen
* - init_customer_list(): Setzt die Anzahl der Einträge auf 0.
* - get_length(): Gibt die Anzahl der Einträge zurück.
* - create_customer(): Erstellt einen neuen Kunden.
* - add_customer(): Fügt einen Eintrag hinzu.
* - add_customers(): Fügt mehrere Einträge hinzu.
* - get_customer_with_index(): Liefert den Kunden mit dem Index innerhalb der Liste.
* - get_customer_with_id(): Sucht einen Kunden mit einer bestimmten ID.
* - get_customers_with_revenue(): Sucht Kunden innerhalb bestimmter Umsatzgrenzen.
* - get_customer_with_highest_revenue(): Sucht den Kunden mit dem
* höchsten Umsatz.
* - get_customer_with_lowest_revenue(): Sucht den Kunden mit dem
* niedrigsten Umsatz.
* - get_top_n_customers_revenue(): Sucht die n Kunden mit dem höchsten Umsatz.
* - get_bottom_n_customers_revenue(): Sucht die n Kunden mit dem niedrigsten Umsatz
* - get_customer_id(): Liefert die ID eines Kunden.
*
*/