Zum Inhalt springen

Projekt in C++


Elminyo

Empfohlene Beiträge

hallo leute,

ich hab ein projekt in c++ bekommen wo ich eine scannerkasse programmieren soll und zwa sieht die aufgabe so aus

"ein mitarbeiter meldet sich an der Kasse mit pw an und liest die Nummern der eingekauften Artikel über einen Barcode-Scanner ( EAN13) ein, Er behält auf entsprechenden Knopfdruck einen Kassenbon, der auch das Aktuelle Datum und die aktuelle Uhrzeit enthält. Nach einem Knopfdruck können die Artikel des nächsten Kunden erfasst werden.

Die vollständigen Artikeldaten befinden sich in einer Datei.

Aufbau der Datei: BarCode, Artikel-Name, Preis, Rabatt_art, Rabatt.

Rabatt Arten:

0=kein Rabatt

1=reduzierter Preis =>Rabatt=Prozentsatz

2=Drei für Zwei =>drei Artikel werden zum Preis von 2 verkauft

Nach Ende der Eingabe wird ein kassenbon erstellt. Die Kasse berechnet die Rückgabe und zeigt sie an.

Nach Abschluss der kasse durch einen Mitarbeiter, wird eine statistik am Bildschirm ausgegeben

-den gesamten Kassenbestand (€)

-den aktuell angemeldeten Mitarbeiter

-die Anzahl der bedienten Kunden

-den durchschnittlichen Umsatz der Kunden

Das Statistik objekt soll persistent angelegt werden.

Aufgabe:

-erstellen sie geeignete Klassen, um die Geschäftsprozesse abzubilden.

-Programmieren Sie unter Verwendung der entwickelten Klassen ein Programm in C++, welches dei geforderten Funktion ausführt.

-Testen Sie das Programm mit 20 Artikeln "

So vorweg ich wahr die zeit während wir c++ durchgenommen haben leider im kranken haus und muss das projekt nicht machen.

Aber da ich einen Noten durchschnitt einhalten muss für die IHK-Prüfung mach ich dieses Projekt freiwillig mit.

habe aber leider keine ahnung von tuten un blassen deshalb wollte ich mal fragen ob jemand so ein projekt hat bzw. einen link kennt.

beim wikipedieren (googlen) hab ich nix gefunden.

Link zu diesem Kommentar
Auf anderen Seiten teilen

So vorweg ich wahr die zeit während wir c++ durchgenommen haben leider im kranken haus und muss das projekt nicht machen.

Also vorne weg, ich finde es gut, dass Du Dich damit auseinander setzen will.

Also ich finde es schon etwas oversized einen Anfänger so etwas machen zu lassen, naja, aber okay:

Zuerst einmal ist die Frage welche IDE Du verwendest und was als Ziel raus kommen soll. Reicht eine Konsolenanwendung oder muss es eine richtige GUI sein?

Bei einer GUI wäre die Frage welche Techniken kannst Du verwenden und mit welchen kennst Du aus? Hierbei wäre z.B. die Frage ob Du eben die Win-API verwendest oder externe Libs wie Qt.

Dann wäre die Anbindung des Scanners, werden hier externe Komponenten geliefert oder wird das einfach als "Tastaturgerät" betrieben?

Wie sollen die Artikel verwaltet werden? Ist hier eine Datenbank erforderlich, wenn ja, welche?

Der Ansatz, den TDM gepostet hast, ist schon richtig. Du musst erst einmal Klassen konzipieren und dann diese erstellen. Wobei dann meine Fragen sich auf die konkrete Umsetzung beziehen

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also vorne weg, ich finde es gut, dass Du Dich damit auseinander setzen will.

Also ich finde es schon etwas oversized einen Anfänger so etwas machen zu lassen, naja, aber okay:

Zuerst einmal ist die Frage welche IDE Du verwendest und was als Ziel raus kommen soll. Reicht eine Konsolenanwendung oder muss es eine richtige GUI sein?

Bei einer GUI wäre die Frage welche Techniken kannst Du verwenden und mit welchen kennst Du aus? Hierbei wäre z.B. die Frage ob Du eben die Win-API verwendest oder externe Libs wie Qt.

Dann wäre die Anbindung des Scanners, werden hier externe Komponenten geliefert oder wird das einfach als "Tastaturgerät" betrieben?

Wie sollen die Artikel verwaltet werden? Ist hier eine Datenbank erforderlich, wenn ja, welche?

Der Ansatz, den TDM gepostet hast, ist schon richtig. Du musst erst einmal Klassen konzipieren und dann diese erstellen. Wobei dann meine Fragen sich auf die konkrete Umsetzung beziehen

Vom "aufmerksamen" Lesen des Textes sieht man, dass die Bestände über Flatfiles verwaltet werden.

Die Frage nach dem Präsentations-Layer ist eh uninteressant, da jederzeit austauschbar.

Daten-Layer ist durch die Dateien bestimmt. Fehlt quasi nur noch die Business-Logik die es zu programmieren gilt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Vom "aufmerksamen" Lesen des Textes sieht man, dass die Bestände über Flatfiles verwaltet werden.

Einen Barcode wird man aber nicht in Flatfiles speichern, da es sich hierbei um eine graphische Repräsentation handelt. Der OP hat zu dieser Repräsentation keine weiteren Informationen gegeben. In den meisten Fällen würd eman nicht den Barcode sondern den Wert, der durch den Barcode repräsentiert wird, als Primärschlüssel speichern.

Die Frage nach dem Präsentations-Layer ist eh uninteressant, da jederzeit austauschbar.

Es es nicht, da eben in der Aufgabenstellung auch dieser gefordert wird. Ein Hinweis, dass diese z.B. als Framework verfügbar ist, sehe ich nicht

Daten-Layer ist durch die Dateien bestimmt. Fehlt quasi nur noch die Business-Logik die es zu programmieren gilt.

...und die Anbindung der Hardware (Scanner + Drucker), da das System getestet werden soll

Link zu diesem Kommentar
Auf anderen Seiten teilen

#include <iostream>

using namespace std;

int main ()

{

Schleife1:

int zeichen;

cout << " " << endl;

cout << "Geben Sie die Rechenart ein ( (1) -> + (2) -> - (3) -> * (4) -> / ) ";

cin >> zeichen;

if ((zeichen >= 1) && (zeichen <=4))

{

cout << " " << endl;

int anzahl;

cout << "Geben Sie die Anzahl der Operanden ein: " ;

cin >> anzahl;

int eins;

cout << "Geben Sie den ersten Operanden ein: ";

cin >> eins;

cout << " " << endl;

int zwei;

cout << "Geben Sie den zweiten Operanden ein: ";

cin >> zwei;

cout << " " << endl;

int ergebnis;

if (zeichen==1)

{

ergebnis = eins+zwei;

cout << eins << " + " << zwei << " = " << ergebnis << endl;

}

if (zeichen==2)

{

ergebnis = eins-zwei; cout << eins << " - " << zwei << " = " << ergebnis << endl;

}

if (zeichen==3)

{

ergebnis = eins*zwei; cout << eins << " * " << zwei << " = " << ergebnis << endl;

}

if (zeichen==4)

{

ergebnis = eins/zwei; cout << eins << " / " << zwei << " = " << ergebnis << endl;

}

}

else goto Schleife1;

system ("pause");

}

soweit hab ich das projekt jetzt hab ich das problem wie ich das passwort und die scanner funktion einbinde und eventuell den rabatt

also das ist nur ein taschen rechner :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

naja eine kasse ist ja auf einen taschenrechner aufgebaut dachte ich :)

Zu Deinem Code: Gotos solltest Du nicht verwenden, schon gar nicht wenn Du in einer OOP-Sprache wie C++ arbeitest.

Zur ursprünglichen Thema: Hast Du Dich mit der Aufgabenstellung vertraut gemacht und diese umgesetzt, dein "Taschenrechner" hat mit Deiner Aufgabenstellung nichts zu tun

Link zu diesem Kommentar
Auf anderen Seiten teilen

ehlrich gesagt hab ich gehofft das ich ein beispiel programm bekomme woran ich mich orientieren kann :rolleyes:

Da kann ich Dir nur die Hausfrauen-Methode empfehlen:

Nimm Dir einen Stift und ein Blatt Papier und schreibe Dir auf, was Du alles benötigtst, eine Einkaufsliste quasi. Dann schreibst Du ein Rezept, welche Arbeitsschritte wann erledigt werden sollen. Anschließend überlegst Du, welche Sinneinheiten es gibt. Die isolierst Du einzeln auf anderen, kleineren Zetteln. Dann setzt Du Dich an Deinen PC und nimmst Dir den ersten der kleinen Zettel und fängst an zu programmieren. Jedesmal, wenn Du nicht weiterweißt, machst Du Deinen Browser auf und googlest. Solltest Du Probleme mit den Befehlen von C++ haben, besuchst Du C++ Reference [C++ Reference] oder cplusplus.com - The C++ Resources Network und bei anderen Problemen guckst Du evtl. auch mal bei Highscore - Programmieren lernen. Und solltest Du dann wirklich nicht weiterwissen, kannst Du hier im Forum immer noch nachfragen. So erweckt es den Eindruck, als habest Du kaum mehr Eigeninitiative besessen, als hier im Forum die Aufgabe zu schildern und auf ein gutes Beispiel zu hoffen.

Nichts für ungut. Ich helfe gern, aber nicht, wenn ich den Eindruck habe, daß derjenige, der Hilfe erwartet sich nicht selbst auch ein wenig bemüht.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...