Telfonbuchaufgabe



  • Hallo Leute, ich versuche mich gerade an einer Telefonbuchaufgabe und habe ein Problem. Das Anzeigen der gespeicherten Kontakte ist leider nicht möglich, bzw. mir wir etwas sehr komisches angezeigt. Hat jemand eine Ahnung woran es liegt?

    // kompilieren: g++ struct.cc -o struct.out
    #include <iostream>
    #include <vector>
    struct kontakt{
      char vorname[20], nachname[20];
      int vorwahl, telefonnummer;
      bool ist_bool;
    };
    
    
    using namespace std;
    int main(){
      int a, b, i = 0, j = 1;
      int c = 0;
      kontakt k = {"max", "mustermann" ,0173, 1111111, 1};
      kontakt neu[10];
    
      /*cout <<k.vorname << " , " << k.nachname
           << " , " << k.vorwahl << endl;
      cout <<k.telefonnummer << endl;*/
    
    while (true){
      cout <<"Was wollen sie tun?\n (1) neuer Eintrag\n (2) alle Kontakte anzeigen lassen" << endl;
      cin >> b;
    
    
      if (b==1){
    
      cout << "Vorname:" << endl;
      cin >> neu[i].vorname;
      cout << "Nachname:" << endl;
      cin >> neu[i].nachname;
      cout << "Vorwahl:" << endl;
      cin >> neu[i].vorwahl;
      cout << "Telefonnummer:" << endl;
      cin >> neu[i].telefonnummer;
      cout << "Handynummer? Ja Nein????:" << endl;
      cin >> neu[i].ist_bool;
      i++;
      }
      if (b=2){
              cout << neu[i].vorname << ", " << neu[i].nachname << endl;
              cout << 0 << neu[i].vorwahl << " " << neu[i].telefonnummer << std::endl;
            }
            }
      return 0;
    }
    

    Als nächster Schritt müsste das Programm soweit verändern, dass der Benutzer die Möglichkeit hat, die gesamte Telefonliste in eine Datei kontakte.dat zu speichern. Hat da einer eine Idee wie ich das machen könnt?

    Bin über die Ratschläge sehr dankbar 🙂



  • @o0omax sagte in Telfonbuchaufgabe:

    #include <vector>

    Warum benutzt du dann ein Array? kontakt neu[10];

    mir wir etwas sehr komisches angezeigt. Hat jemand eine Ahnung woran es liegt?

    Welchen Wert hat i dabei?

    Als nächster Schritt müsste das Programm soweit verändern, dass der Benutzer die Möglichkeit hat, die gesamte Telefonliste in eine Datei kontakte.dat zu speichern. Hat da einer eine Idee wie ich das machen könnt?

    Ich würde das in einer SQLite Datenbank speichern. Aber du sollst vermutlich gelernten Stoff anwenden.

    int vorwahl

    Wie bringst du da führende Nullen unter?

    char vorname[20]

    Warum nicht std::string?



  • In der Aufgabenstellung war dies Vorgegeben:

    vorname[20] und nachname[20] vom Typ char-Array,
    vorwahl und telefonnummer vom Typ int,
    ist_mobil vom Typ bool,

    @manni66

    Wie bringst dz da führende Nullen unter?

    cout << 0 << neu[i].vorwahl << " " << neu[i].telefonnummer << std::endl;

    @manni66 sagte in Telfonbuchaufgabe:

    Welchen Wert hat i dabei?

    i hat doch am Anfang den Wert 0 und wird nach Eingabe eines Kontaktes um 1 erhöht.

    Wenn ich das Programm ausführe und die Kontakte anzeigen lassen will, wird mir folgendes angezeigt:
    "
    , `xálxîlx
    02008247072 1598231034
    "



  • @o0omax sagte in Telfonbuchaufgabe:

    i hat doch am Anfang den Wert 0 und wird nach Eingabe eines Kontaktes um 1 erhöht.

    Welchen Wert hat i dann also während der Ausgabe?



  • @o0omax sagte in Telfonbuchaufgabe:

    cout << 0 << neu[i].vorwahl << " " << neu[i].telefonnummer << std::endl;

    Ich will aber nach Italien: 00 39 ...


Log in to reply