C++ Teil5

www.biohazard-die-nr1.de.vu
Verfügbare Informationen zu "C++ Teil5"

  • Qualität des Beitrags: 0 Sterne
  • Beteiligte Poster: biohazard
  • Forum: www.biohazard-die-nr1.de.vu
  • aus dem Unterforum: Tutorials
  • Antworten: 1
  • Forum gestartet am: Mittwoch 14.04.2004
  • Sprache: deutsch
  • Link zum Originaltopic: C++ Teil5
  • Letzte Antwort: vor 20 Jahren, 10 Tagen, 4 Stunden, 56 Minuten
  • Alle Beiträge und Antworten zu "C++ Teil5"

    Re: C++ Teil5

    biohazard - 15.04.2004, 14:56

    C++ Teil5
    C++ Programmierung - Teil
    5
    Schleifen II, Klassen I
    Teil: (4/?)
    Thema: Schleifen II, Klassen I
    Version: 1.00
    Datum: 15.03.2000

    Do-While Schleife:
    Im letzten Tutor haben wir die while Schleife kennengelernt. Der unterschied zwischen der
    while und der do-while Schleife ist der folgende:
    Bei der while Schleife wird erst die Laufbedingung geprüft und der Schleifenkörper nur dann
    ausgeführt, wenn die Bedingung erfüllt ist. Es kann also sein, dass der Körper der Schleife gar
    nicht ausgeführt wird, da die Bedingung nicht zutrifft. Bei der do-while Schleife wird der
    Schleifenkörper immer mindestens einmal ausgeführt, da erst der Körper ausgeführt wird und
    erst anschließend die Laufbedingung geprüft wird.
    Beispiel:
    Ich werde das Programm aus dem letzten Tutor wieder aufgreifen und es dann
    umschreiben(die Erläuterung entnehmt ihr bitte dem 4. Teil):
    1: #include <iostream.h>
    2:
    3: void main(void)
    4: {
    5: int i, j=1;
    6:
    7: cout << "Wie oft soll der Schleifenkörper ausgeführt werden:";
    8: cin >> i;
    9:
    10: while(i > 0)
    11: {
    12: cout << "\nDurchgang: " << j;
    13: i--; j++;
    14: }
    15:
    16: cout << "\n\nEnde der Schleife!!!";
    17: }
    Wenn der Benutzer auf die Frage hin, wie oft die Schleife durchlaufen werden soll eine 0
    eingibt, wird der Schleifenkörper nicht ausgeführt, da die Laufbedingung nicht erfüllt ist.
    Das ganze Programm mit der do-while Schleife:
    1: #include <iostream.h>
    2:
    3: void main(void)
    4: {
    5: int i, j=1;
    6:
    7: cout << "Wie oft soll der Schleifenkörper ausgeführt werden:";
    8: cin >> i;
    9:
    10: do
    11: {
    12: cout << "\nDurchgang: " << j;
    13: i--; j++;
    14: } while(i > 0)
    15:
    16: cout << "\n\nEnde der Schleife!!!";
    17: }
    Erläuterung:
    In Zeile 10 beginnt unsere do-while Schleife. Sie wird durch ein 'do' eingeleitet und der
    Schleifenkörper wird wie sonst auch immer durch die Klammern eingeleitet und beendet.
    Innerhalb dieser Klammern wird der Code geschrieben. Dabei ist bei der do-while Schleife
    darauf zu achten, dass der Schleifenkörper immer mindestens einmal ausgeführt wird!
    Nach der schließenden geschweiften Klammer ist die Laufbedingung. Ist diese True(also
    stimmt die Laufbedingung) so wird der Schleifenkörper nochmals ausgeführt, bis die
    Laufbedingung False(also nicht zutrifft) ist.
    Das war es auch schon mit der do-while Schleife!

    for-Schleife:
    In den beiden Schleifen, die wir zuvor kennengelernt haben, war es immer so, dass wir eine
    Laufbedingung angegeben haben die auf "Richtigkeit" geprüft wurde. Im Schleifenkörper
    mussten wir immer umständlich Inkrementieren/Dekrementieren oder Variablen anders
    verändern um ein Abbruchbedingung zu erhalten. Bei der for-Schleife ist es möglich die
    Startbedingung(z.B. Deklaration einer Zählervariablen), die Abbruchbedingung und die
    Inkrementieren/Dekrementieren innerhalb der 'Klammer' vorzunehmen. Dazu das obige
    Beispiel entsprechend umgeändert:
    1: #include <iostream.h>
    2:
    3: void main(void)
    4: {
    5: int i, j=1;
    6:
    7: cout << "Wie oft soll der Schleifenkörper ausgeführt werden:";
    8: cin >> i;
    9:
    10: for(i = 0;i > 0; i--, j++)
    11: {
    12: cout << "\nDurchgang: " << j;
    13: }
    14:
    15: cout << "\n\nEnde der Schleife!!!";
    16: }
    Erläuterung:
    Wir betrachten uns mal die Zeile 10. Die Schleife wird durch ein 'for' eingeleitet, dahinter
    folgt die Klammer in der die Startbedingung(der Startwert der Variable i wird auf 0 gesetzt)
    dann die Laufbedingung(i > 0) und schließlich die Dekrementierung/Inkrementierung(die wir
    vorher im Schleifenkörper durchgeführt haben) enthalten sind. Man beachte, dass sie durch
    ein Semikolon voneinander getrennt werden!
    Der Körper wird solange durchlaufen, bis die Laufbedingung 'False' ist.
    Erweiterte for-Schleife:
    Wie wir es im überstehenden Beispiel schon zum Teil gemacht haben, können wir die for-
    Schleife erweitern:
    .....
    .....
    .....
    for(int i=0, int j=0 ; i>0 ; i--, i++)
    {
    .....
    .....
    }
    ......
    ......
    ......
    Wie wir sehen, haben wir die Deklaration der Variablen jetzt innerhalb der for-Schleife
    durchgeführt. Genauso habe wir die Inkrementierung/Dekrementierung (wie oben) dort
    durchgeführt.
    Das war es mehr oder weniger auch mit Schleifen.

    Klassen:
    Ihr solltet euch jetzt noch mal kurz das Thema "Variablen" und "Funktionen" durch den Kopf
    gehen lassen, da wir das jetzt gebrauchen können.
    Also was sind Klassen? Unter Klassen kann man sich am ehesten eine Sammlung von
    Variablen und Funktionen vorstellen. Innerhalb einer Klasse werden Variablen/Funktionen
    eines bestimmten Typs erzeugt. Um das mal ein bisschen zu veranschaulichen werde ich das
    mal mir einer Fußballmannschaft vergleichen(wie nehmen mal Bayer 04 Leverkusen(nicht
    das ich Bayer Fan wäre(oh, jetzt habe ich mich geoutet) und FC Bayern München):
    Also wir stellen uns beide Vereine als zwei unterschiedliche Klassen vor(Bayer und
    München). In jeder dieser Mannschaften gibt es Spieler, die auf verschiedenen Positionen
    Spielen. Also:
    Klasse Bayer Klasse München
    Stürmer.Ulf_Kirsten Stürmer.Carsten_Janker
    Torwart.Adam_Matysek Torwart.Oliver_Kahn
    Der Klasse Bayer gehört also Ulf Kirsten an, der wiederum aus der Klasse Stürmer
    kommt(sozusagen eine Liste aller Stürmer aus der Ulf_Kirsten in die Klasse Bayer einsortiert
    wird). Genauso verhält sich das mit mit dem Torwart und dem Rest.
    Ok, Ok ich geb es ja zu das ist scheiße erklärt aber egal.
    Ich werde mal einfach anfangen und das nächste Tutor ausschließlich Klassen widmen:
    1: #include <iostream.h>
    2:
    3: class Kirsten{
    4: public:
    5: int alter;
    6: int gebJahr;
    7: };
    8:
    9: void main(void)
    10: {
    11: Kirsten Spieler;
    12: cout << "Ulf ist " << Spieler.alter << " Jahre alt";
    13: cout << "\nUlf wurde im jahre " << Spieler.gebJahr << " geboren\n\n";
    14: }
    Erläuterung:
    In Zeile 3 erstellen wir die Klasse 'Kirsten'. Klassen werden außerhalb von Funktionen
    Deklariert. Klassen erstellt man mit Hilfe des Schlüsselwortes 'class', gefolgt von einer
    öffnenden geschweiften Klammer und einigen Datenelementen(int alter etc.). Beendet wird
    die Deklaration durch eine schließende geschweifte Klammer und einem Semikolon(nicht
    vergessen!). Was 'public' bedeutet werde ich im nächsten Tutor erklären.
    In Zeile 11 erzeugen wir eine Instanz von der Klasse Kirsten(was das ist kläre ich –genau im
    nächsten Tutor). Diese Instanz heißt Spieler.
    In den Zeilen 12/13 werden die Werte der Variablen über die Instanz der Klasse Kirsten
    ausgegeben. Da wir den Variablen keinen Wert zugewiesen haben, werden irgendwelche
    wirren Zahlen ausgegeben.



    Mit folgendem Code, können Sie den Beitrag ganz bequem auf ihrer Homepage verlinken



    Weitere Beiträge aus dem Forum www.biohazard-die-nr1.de.vu



    Ähnliche Beiträge wie "C++ Teil5"

    [EINZEL] vincentvega vs. replicator (story teil5) - vincentvega (Dienstag 05.09.2006)
    Ein Stück CityMercs Geschichte Teil5 - Janine Allison (Freitag 17.03.2006)