80 lines
3.8 KiB
C
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.
|
|
*
|
|
*/
|