Hello,
could you support me in the failures of this task, I have included also the actual failures in Word-Doc.
Thank you in advance,
could you support me in the failures of this task, I have included also the actual failures in Word-Doc.
Thank you in advance,
Code:
/*######################################################
Einsendeaufgabe 5.2
###################################################### */
/* ##################################
Doppelt verkettete Liste
################################## */
#include <iostream>
using namespace std;
//Die Struktur für die Listenelemente
struct listenelement
{
string daten;
listenelement* next;
listenelement* last;
};
listenelement* listenanfang;
listenelement* listenende;
listenelement* hilfszeiger;
//Eine Funktion zum Anhängen von Elementen an die Liste
void anhaengen(string datenneu)
{
hilfszeiger = listenanfang;
while (hilfszeiger->next != nullptr)
hilfszeiger = hilfszeiger->next;
}
hilfszeiger->next = new(listenelement);
listenelement* bisherLetzter = hilfszeiger;
hilfszeiger = hilfszeiger->next;
strcpy(hilfszeiger->daten,datenneu);
hilfszeiger->next = NULL;
hilfszeiger->last = bisherLetzter;
listenende = hilfszeiger;
}
//Eine Funktion zum Ausgeben aller Elemente
void ausgeben()
{
hilfszeiger = listenanfang;
cout << hilfszeiger->daten << '\n';
while (hilfszeiger->next != nullptr)
{
hilfszeiger = hilfszeiger->next;
cout << hilfszeiger->daten << '\n';
}
}
void ausgaberueckwaerts() {
hilfszeiger = listenende;
cout <<hilfszeiger->daten<<"\n";
while (hilfszeiger->last != NULL) {
hilfszeiger = hilfszeiger->last;
cout << hilfszeiger->daten << "\n";
}
}
void initialisieren() {
listenanfang = new(listenelement);
listenanfang->next = NULL;
listenanfang->last = NULL;
listenende = listenanfang;
strcpy(listenanfang->daten,"Element 0");
}
//die Liste leeren und Speicher freigeben
void ende()
{
while (listenanfang != nullptr)
{
hilfszeiger = listenanfang;
listenanfang = listenanfang->next;
delete(hilfszeiger);
}
}
int main ()
{
initialisieren();
anhaengen("Element 1");
anhaengen("Element 2");
anhaengen("Element 3");
ausgeben();
ausgaberueckwaerts();
ende();
return 0;
}