Problem Lösung in C++?
Das ist eine Aufgabe in C++ . Diese Code war im Programm schon geschrieben (Was ich nicht ändern darf, ich meine :) ). Ich muss nur noch einige Zeile hinzufügen (An der Stelle, wo steht: "your code goes here"), damit diese Code funktioniert. Kann jemand helfen? Das Problem ist auf zweitem Bild beschrieben.
2 Antworten
Da fehlt nur noch die Methode add():
void add ( int ID )
{
/*
die Konstante 100 sollte in der Klasse als enum definiert werden: enum { Queue_Size = 100 };
*/
if ( size >= 100)
{
cout << "queue is full" << endl;
return;
}
queue[size++] = ID;
}
Du musst mehr als eine Zeile schreiben. Da fehlt die gesamt Prozedur ADD!
fang am Besten an mit:
void ADD (neuerWert: int) {
dann auf Queue voll (size = 100) prüfen
entweder Warnmeldung ausgeben
oder
alles um einen Platz nach hinten schieben, den neuen Wert auf Platz 1 eintragen und size um eins erhöhen
fertig
Den code selbst bekommst du schon hin, du kannst ja die Prozedur REMOVE als Vorlage nehmen.
btw.
das ist eine selten Blöde Implementierung einer Queue, die einen Haufen Rechenzeit mit umkopieren verschwendet. Besser ist es, den Anfang der Queue als eine Pointer auf ein Element des Arrays zu definieren und wandern zu lassen. Noch besser wäre es, die Queue als eine verkettete Liste zu implementieren, dann wäre die Länge nur durch die Größe des HEAP also durch den auf der Maschine vorhandenen Speicher begrenzt.
EDIT Rechtschreibfehler beseitigt