Erstellen einer Programmdokumentation [was: - - - Programmdokumentation ...]



  • immigrant schrieb:

    Es bringt doch so nichts und wie man "richig" kommentiert...

    Ich würde aber gerne "richTig" kommentieren, am liebsten würde ich meinen Lehrer damit ja bloßstellen, zumahl wir auch bald wahrscheinlich eine Besprechung mit dem Vertraueslehrer haben wegen dem, weil das so wie der den Unterricht und seine Arbeiten macht echt nicht weiter gehen kann. Ich würde auf jeden Fall mal gerne sehen wie es denn richtig ist, weil es mir später ganz bestimmt falsch nichts bringt!



  • Was ist das eigentlich für ein Unterricht? Ist das Berufsschule für Fachinformatiker? Oder ist es ein Unterricht in einer Allgemeinen Schule?

    Wenn es letzteres ist, muß ich sagen, kann der Lehrer wahrscheinlich am wenigsten dafür. Bei dem Lehrermangel und dem was die Kommunen heute einsparen, könnt ihr wahrscheinlich froh sein, überhaupt einen gefunden zu haben, der sich bereit erklärt den Unterricht zu machen. Und ganz ehrlich, sooo wichtig ist das nun auch nicht in einer allgemein bildenden Schule.

    Wenn es aber eine Berufsschule für Fachinformatiker ist, sieht das schon anders aus. Da muß zwar kein Profi vorne stehen, aber der sollte schon mehr auf dem Kasten haben, als ein Lehrer aus einer allgemein bilden Schule. Ganz klar.



  • Es ist höhere Berufsfachschule für Informatik (HBFI)!



  • Ich denke von einem Lehrer erwartet man nicht so viel. Zum einen ist unterrichten, besonders auf einer "allgemeinen Schule" gar nicht so leicht und auf der anderen Seite haben die wenigsten Lehrer wirkliche Erfahrungen. Junge Lehrer werden oft "abgeworben" und daher sind viele Lehrer darauf angewiesen das Wissen in ihrer Freizeit nachzuholen. (Bedenkt das Durschnittsalter der meisten Lehrer)

    @ClouDtheStrifE

    //Die vorher zwischengespeicherten Arrays werden in einer bestimmten Zahlenreinfolge auf ein zweidimensionales Array übertragen

    Das beschreibt nicht wirklich was der Code macht. Welche Reihenfolge?



  • In Wirklichkeit würde man alles in kleine Funktionen aufteilen und dann nur über jede Funktion schreiben was sie macht. Durch gute Bezeichner kann sogar kommentieren ganz entfallen.



  • Meinst du eher so?

    for (e=1;e<=25;e++)
            {
            buchstabe[e]=getch();                // Es werden hintereinander 25 Buchstaben abgefragt, die jeweils in einem Array zwischengespeichert werden
            cout<<buchstabe[e];
            }
     for (e=1;e<=5;e++)
            {
            for (h=1;h<=5;h++)
                    {
                    buchstabe2[h][e]=buchstabe[f];    //Dich vorher zwischengespeicherten Buchstaben werden zeilenweise in ein zweidimensionales Array übertragen, immer nach 5 Buchstaben in einer Zeile geht es in die nächste Spalte weiter
                    f++;
    


  • Sorry, war nicht ganz korrekt ausgedrückt. Hier jetzt noch mal richtig:

    #include <iostream.h>
    #include <conio.h>
    #include <vcl.h>
    #include <stdio.h>
    
    int main()
    {
     int  e, f, h;
     char buchstabe[25], buchstabe2[5][5];
     f=1;
     cout<<"Geben Sie die zu verschluesselnde Nachricht ohne Leerzeichen ein(25 Buchstaben)!\n";
     for (e=1;e<=25;e++)
            {
            buchstabe[e]=getch();                // Es werden hintereinander 25 Buchstaben abgefragt, die jeweils in einem Array zwischengespeichert werden
            cout<<buchstabe[e];
            }
     for (e=1;e<=5;e++)
            {
            for (h=1;h<=5;h++)
                    {
                    buchstabe2[h][e]=buchstabe[f];    //Dich vorher zwischengespeicherten Buchstaben werden zeilenweise in ein zweidimensionales Array übertragen, immer nach 5 Buchstaben in einer Zeile geht es in der nächsten Zeile weiter
                    f++;
                    }
            }
     cout<<"\n";
     for (e=1;e<=5;e++)
            { 
            for (h=1;h<=5;h++)
                    {
                    cout<<buchstabe2[e][h];           //Das zweidimensionale Array wird nun spaltenweise ausgeben, immer nach 5 Buchstaben aus einer Spalte geht es in der nächsten Spalte weiter
                    }
            cout<<' ';
            }
     getch();
    
      return 0;
    


  • Hi!

    #include <iostream.h>
    

    Phu, wenn ich sowas schon sehe! 😮

    Sollt ihr tatsächlich nur den Quellcode kommentieren oder mit Struktogrammen und dergleichen Arbeiten?
    Der Lehrer wird dir dazu Auskunft geben können, würde ich mal meinen!

    grüße



  • David_pb schrieb:

    Sollt ihr tatsächlich nur den Quellcode kommentieren oder mit Struktogrammen und dergleichen Arbeiten?
    Der Lehrer wird dir dazu Auskunft geben können, würde ich mal meinen!

    Hi,
    eir sollen eine komplette Programmdokumentation machen, da ist der Hauptteil der Quellcode mit Kommentaren. Jedenfalls hat unser Lehrer uns nicht wirklich gesagt, was da sonst noch reinkommt.



  • Hi!

    Tatsächlich? Meiner Meinung nach ist der Haupteil nicht die Kommentierung des Programms sondern eher das was davor abläuft. Programmdesign etc... Und das passiert normal auf Papier oder virtuell, aber nicht im Quellcode.

    Aber da ich nicht weiß was der Lehrer fordert habe ich ja extra nochmals nachgefragt.

    grüße



  • ClouDtheStrifE schrieb:

    Sorry, war nicht ganz korrekt ausgedrückt. Hier jetzt noch mal richtig:

    #include <iostream.h>
    #include <conio.h>
    #include <vcl.h>
    #include <stdio.h>
    
    int main()
    {
     int  e, f, h;
     char buchstabe[25], buchstabe2[5][5];
     f=1;
     cout<<"Geben Sie die zu verschluesselnde Nachricht ohne Leerzeichen ein(25 Buchstaben)!\n";
     for (e=1;e<=25;e++)
            {
            buchstabe[e]=getch();                // Es werden hintereinander 25 Buchstaben abgefragt, die jeweils in einem Array zwischengespeichert werden
            cout<<buchstabe[e];
            }
     for (e=1;e<=5;e++)
            {
            for (h=1;h<=5;h++)
                    {
                    buchstabe2[h][e]=buchstabe[f];    //Dich vorher zwischengespeicherten Buchstaben werden zeilenweise in ein zweidimensionales Array übertragen, immer nach 5 Buchstaben in einer Zeile geht es in der nächsten Zeile weiter
                    f++;
                    }
            }
     cout<<"\n";
     for (e=1;e<=5;e++)
            { 
            for (h=1;h<=5;h++)
                    {
                    cout<<buchstabe2[e][h];           //Das zweidimensionale Array wird nun spaltenweise ausgeben, immer nach 5 Buchstaben aus einer Spalte geht es in der nächsten Spalte weiter
                    }
            cout<<' ';
            }
     getch();
    
      return 0;
    

    überprüfe mal deine schleifen! überall bereichsüberschreitungen!!
    (e=1;e<=5;e++) -->> (e=0;e<5;e++)

    ansonsten: kA was man hier dokumentieren soll. beschreibe lieber den verschl-algo. unterteile das am besten in ein paar funktionen, z.B. einlesen, verschlüsseln, ausgeben, und dokumentiere jede einzelne. z.B. "liest die zu verschlüsselnden 25 zeichen aus der konsole in ein array ein". da brauchst du dann nicht nochmal die schleife zu erklären, es sei denn, dein lehrer will es so. bei "verschlüsseln" beschreibst du den algo, usw.
    und wähle vernünftige bezeichner, nicht buchstabe2, sondern besser "veschlüsselteBuchstaben".

    Gruß mathik



  • ich würde auch so machen wie mathik vorgeschlagen hat.
    Die 3 Schleifen kann man in 3 Funktionen unterteilen.

    Dann sieht die Main auch viel besser aus und man weis sofort was das Programm macht.

    /**
    * Liest die Zeichen ein.
    */
    void einlesen()
    {
        // ...
    }
    
    /**
    * Verschlüsselt die Zeichen.
    */
    void verschlüsseln()
    {
        // ...
    }
    
    /**
    * Gibt die Zeichen aus.
    */
    void ausgeben()
    {
        // ...
    }
    
    int main()
    {
        einlesen();
        verschlüsseln();
        ausgeben();
    }
    

Anmelden zum Antworten