Computer-Masters.de > Artikel > Programmieren > C++ > C++ Einsteigerkurs > C++ Einsteigerkurs: Kapitel 10: Wissenswertes

Bevor Sie weiter machen können, sollten Sie noch einige kleine Wissenswerte Tricks kennenlernen, die Ich in den nächsten Kapiteln anwenden werde.
Einige tragen zur Verschönerung der Programme bei, andere sind fundamental für die Programmierung. Sie sollten dieses Kapitel also nicht überspringen!

Block

Ein Block ist einfach nur das was in geschweiften Klammern an Befehlen steht.


Cpp-Script

{
//Befehle, Code...
}
1

Ein Block wird immer als ein einzelner Befehl gesehen, auch wenn mehrere Befehle in ihm stehen, denn außerhalb des Blocks ist das was in ihm deklariert wird nicht sichtbar.
Ein Block ist sehr nützlich um den Code übersichtlich zu gestalten.
Ich habe Ihnen diese Block-Schreibweise schon bei der if-Schleife beigebracht, wo sie eigentlich nicht unbedingt notwendig ist. Es ist aber nicht falsch es sich so anzugewöhnen, denn es macht den Code viel übersichtlicher.

break;

'break' kennen Sie schon bei einem Switch. Aber auch while-, for-, oder do-Schleifen können mit break beendet werden.

continue;

Mit 'continue' springt man an das Ende eines Blocks.

system("cls");

Dieser Befehl 'clearscreen' räumt die Ausgabe auf. Das heißt, alles was vorher ausgegeben wurde ist weg vom Bildschrim, die Variablen sind aber nicht gelöscht.
Mit system("cmd-Befehl"); können übrigens alle CMD-Befehle in einem C++ Programm aufgerufen werden.

Modulo-Operator (%)

Das rechnen mit Kommazahlen (float oder double) dauert oft länger als das mit Integern. Wenn man Zahlen dividiert, kommen aber oft Kommazahlen als Ergebnis heraus. Folglich müsste man Divisionen immer mit Kommazahlen ausführen.
Abhilfe schafft hier der Modulo-Operator:


Cpp-Script

//Beispielsrechnung
//mit Kommazahlen:
float a=10.0;
float b=8.0;
cout<<"a/b="<<a/b<<endl;

//mit Integern und Modulo
int c=10;
int d=8;
cout<<"c%d="<<c%d<<endl;
1

Das Ergebnis dieses Programms wäre folgende Ausgabe:
a/b=1.25
c%d=2

Die erste Zeile ist klar. In der Zweiten Zeile wird der Rest ausgegeben. 10 geteilt durch 8 ist 1, Rest: 2.

Aufgabe zu Kapitel 10

Schreiben Sie ein Programm, das eine Liste von Jahreszahlen ausgibt und bei jeder Jahreszahl sagt, ob es ein Schaltjahr ist oder nicht.
Der Nutzer soll selbst festlegen können, von welchem bis welchem Jahr die Liste ausgegeben werden soll.
Zudem sollen Jahreszahlen unter 1000 und über 3000 nicht in das Prgramm mit einbezogen werden.
Sollte der Nutzer eine solche Zahl eingeben, soll er darauf hingewiesen werden und eine neue Zahl eingeben.
Hinweise:
Ein Jahr ist ein Schaltjahr wenn die Jahreszahl durch 4 teilbar ist. Nicht aber wenn Sie durch 100 teilbar ist. Aber schon, wenn sie duch 400 teilbar ist.
Beachten Sie; der Nutzer kann die Jahreszahlen falsch herum eingeben. Schreiben Sie eine Funktion die die Zahlen richtig herum stellt.
Schreiben Sie die folgende Funktionen:

void pruefeEingabe() Prüft die Eingabe des Nutzers: Sind die Zahlen zu klein/ zu groß? Sind Sie richtig herum eingegeben worden?
void tauscheJahreszahlen() Wird aufgerufen, wenn die Zahlen falsch eingegeben wurden.
bool schaltjahr(int jahr) gibt true oder false zurück; benutzen Sie if-Abfragen!
void listeJahre(int start, int ende) Eine Liste aller Jahre, die Schaltjahre sind markiert. Benutzen Sie eine for-Schleife!


Benutzen Sie zudem den Modulo-Operator und das Wissen aus den letzten Kapiteln (if-Abfrage, for-Schleife etc.).
Das Programm soll auch nicht nach dem ersten Durchlauf abgebrochen werden. Benutzen Sie eine do-Schleife.

Einen Lösungsvorschlag dieser Aufgabe finden Sie unten auf dieser Seite zum Download.

 

 

Download der Codedateien aus Kapitel 10

application/zip Kapitel 10 Quellcode zur Lösung (2,2 KiB)
Computer-Masters.de > Artikel > Programmieren > C++ > C++ Einsteigerkurs > C++ Einsteigerkurs: Kapitel 10: Wissenswertes

Anzeige: