Programmierbefehl Löschen & Ändern
-
wir sollen von der schule aus ein programm schreiben welches so ähnlich wie eine
Kundendatenbank funzeln soll
ich hab jetzt schon alles bis auf die befehle fürs löschen und ändern eines Kundendas ist mein programm:
#include <cstdlib> #include <iostream> #include <string.h> using namespace std; int main() //===============================VARIABLENDEKLARATION=========================== { struct tKunde { int DatNr; string PLZ; string TelNr; string Name; string Vorname; string Ort; string GebDatum; string Geschlecht; }; tKunde Kunden [1000]; int a, b, c, wdg; string weiter1, weiter2; bool wdh = false; bool wdh1 = true; bool wdh2 = false; char auswahl; string wiederholen; string cls; //===============================EINGABE======================================== A: do { wdh = false; cout << "Was m"<<"\x94"<<"chten Sie tun?" << endl; cout << "Anlegen = 1 \t Anzeigen = 2 \t \x8Endern = 3 \t L\x94schen = 4 \t" << endl<<endl; cin >> auswahl; cout << endl << endl; switch(auswahl) { case '1':{while(wdh1) { cout << "Geben Sie die Daten des Kunden ein" << endl << endl; cout << "(Name, Vorname, Tel. Nr., PLZ, Ort, Geb. Datum, Geschlecht):"; cout << endl << endl; for(a=0;a < 3;a++) //Anlegen eines Kunden { Kunden[a].DatNr = a+1; cin >> Kunden[a].Name; cin >> Kunden[a].Vorname; cin >> Kunden[a].TelNr; cin >> Kunden[a].PLZ; cin >> Kunden[a].Ort; cin >> Kunden[a].GebDatum; cin >> Kunden[a].Geschlecht; if(a!=2) { cout << "\nGeben Sie bitte die Daten f\x81r den n"<<"\x84"<<"chsten Kunden ein!\n" << endl; } ;} cout << "\n\nWollen Sie noch weitere drei Kunden eintragen?(Ja/ beliebig)\n" << endl; cin >> weiter1; cout << "\n\n"; if ((weiter1 == "JA") || (weiter1 == "Ja") || (weiter1 == "J") || (weiter1 == "jA") || (weiter1 == "ja") || (weiter1 == "j")) { wdh1=true; } else { goto B; wdh1=false; system("PAUSE"); return EXIT_SUCCESS; } }}break; case '2':{ do {wdh2 = true; { cout << "Welchen Kunden m"<<"\x94"<<"chten Sie anzeigen lassen?"; cin >> wdg; for(b = 0; b < 1000; b++) { if(Kunden[b].DatNr == wdg) { cout << "Die Daten von Kunde " << wdg << ":" << endl; cout << Kunden[b].Name << endl << endl; cout << Kunden[b].Vorname << endl << endl; cout << Kunden[b].TelNr << endl << endl; cout << Kunden[b].PLZ << endl << endl; cout << Kunden[b].Ort << endl << endl; cout << Kunden[b].GebDatum << endl << endl; cout << Kunden[b].Geschlecht << endl << endl; } } } cout << "Wollen Sie noch weitere Kunden ausgeben?(Ja/ beliebig)" << endl; cin >> weiter2; if ((weiter2 == "JA") || (weiter2 == "Ja") || (weiter2 == "J") || (weiter2 == "jA") || (weiter2 == "ja") || (weiter2 == "j")) { wdh2 = true; } else { wdh = false; goto B; } }while(wdh2); }break; case '3':{ }break; case '4':{ }break; default:{ system("CLS"); cout << "\n\n\n\t\t\t !!!Falsche Eingabe!!! \n\n\n\n\n Das Programm wird neu geladen\n\n\n"; { long Sek; Sek = time(NULL); for (int k = 3; k > 0; k--) { cout << k << "\n\n\n"; while (time(NULL) == Sek) {}; Sek = time(NULL); } system("CLS"); goto A; }break; }; B: cout << "\n\nM"<<"\x94"<<"chten Sie noch etwas tun? (Ja/ beliebig) " << endl<< endl; cin >> wiederholen; if ((wiederholen == "JA") || (wiederholen == "Ja") || (wiederholen == "J") || (wiederholen == "jA") || (wiederholen == "ja") || (wiederholen == "j")) { cout << "\n\nSoll Ihr Fenster ges\x84ubert werden? Ja/ beliebig)" << endl << endl; cin >> cls; { if ((cls == "JA") || (cls == "Ja") || (cls == "J") || (cls == "jA") || (cls == "ja") || (cls == "j")) { system("CLS"); cout << "\t\t\t Das Programm wird neu geladen\n\n\n"; { long Sek; Sek = time(NULL); for (int k = 3; k > 0; k--) { cout << k << "\n\n\n"; while (time(NULL) == Sek) {}; Sek = time(NULL); } system("CLS"); } } goto A; } } system("PAUSE"); return EXIT_SUCCESS; }}while(wdh);}PS: hab erst in diesem schuljahr gelernt wie man programmiert also noch anfänger
schreibt bitte noch eine erklärung zu euren antworten damit ich das auch für die zukunft im kopf behalte
-
das wird irgendwie nicht richtig angezeigt hab da eigentlich noch abstände usw.
sry das das so kacke aussieht
-
http://www.c-plusplus.net/forum/304133
Mehr sag ich nicht!
-
Löschen ist eine gute Idee. Lösch das alles bitte.
-
bisjetzt nur sehr hilfreiche beiträge ich danke euch
bitte nur antworten wenn man auch wirklich helfen will
thx
-
DerEineTyp schrieb:
bitte nur antworten wenn man auch wirklich helfen will
Es wollen alle helfen, sie koennen bloss nicht. Und dein Beitrag ist der Hauptgrund dafuer, daher aergern sie dich.
Du stellst keine Frage, postest aber ellenlangen Code, dazu auch noch unformatiert. Lies dir bitte mal die Links in meiner Signatur durch, damit das nicht noch einmal passiert.
Beim Querlesen faellt mir jede Menge Spaghetticode auf, sogar gotos. Wo immer du gelernt hast, vergiss besser alles und nimm ein gutes Buch (auch in meiner Signatur). In vielen Buechern duerfte goto gar nicht drinstehen, string.h irgendwo im Anhang und der Stil den du benutzt steht so eher in uralten C-Buechern (C und C++ haben nicht viel gemeinsam, ausser der Grammatik).
-
Ich gehe jetzt mal nicht auf deinen Code ein.
kennst du std::vector? kennst du Klassen?Wenn ja, dann mach dir eine vernünftige Klasse mit Constructor und sammle alle Kunden in einem Vector. (tKunde Kunden [1000] <- da stellts mir die Haare auf)
Achja noch was zu vernünftige Antworten:
Es will dir jeder helfen, aber wenn dus uns so schwer machst wird dir keiner helfen.gruß
syntax
-
[quote="SeppJ"
Beim Querlesen faellt mir jede Menge Spaghetticode auf, sogar gotos. Wo immer du gelernt hast, vergiss besser alles und nimm ein gutes Buch (auch in meiner Signatur). In vielen Buechern duerfte goto gar nicht drinstehen, [/quote]
die goto kannte ich schon von der batch programmierung.
haben damals im informatik unterricht in der 8. klasse batch programmiert.
ich weiß nicht wie ich das sonst machen soll mit den goto's ist es halt am einfachsten@Syntax_error
ne std::vector hatten wir noch nicht und klassen auch nicht und tKunde Kunden [1000] <- die tausend stehen dafür das man 1000 kunden speicher kann und das ist vom lehrer vorgegeben also muss ich das drin lassendie beiden lehrer die wir in proggen haben, wollen uns noch beibringen wie man das ganz auf der festplatte speichern kann damit man die kunden immer wieder aufrufen kann halt wie ne datenbank
-
ups das zitieren hat nicht ganz gefunzelt
-
ups es gibt eine editierfunktion für sowas
-
DerEineTyp schrieb:
das ist vom lehrer vorgegeben also muss ich das drin lassen
das übliche Problem. Lehrer mit dem Wissensstand von vor 20 Jahren versuchen, ihre alten Programmierkonzepte auf aktuelle Programmiersprachen anzuwenden.
Kommt leider viel zu oft vor...
-
Infos über die Verwendung von Vektoren kannst Du übrigens bei
http://www.cplusplus.com/reference/stl/vector/erase/ nachlesen.Du kannst natürlich auch das C-Array, so wie Du es verwendest, um Funktionen, wie
Elemente löschen oder ändern, erweitern.
Das wäre dann quasi in etwa die eigene Entwicklung eines Klassentemplates wie der
std::vectorWie sowas geht, kann man z.B. bei
http://mischaonline.mi.funpic.de/PG/vcppk/die_klasse_vector.html
nachlesen.
-
hustbaer schrieb:
ups es gibt eine editierfunktion für sowas
genau das hatte ja nicht gefunzelt
thx redrew99
werd da ma nachschauen und versuche es dann anzuwenden
-
Bei [quote="SeppJ" fehlt die schliessende ]