| Schleifentypen |
| Zählerschleifen: For-Schleife |
Beispiel: Primzahlenberechnung [Ausführen]
Struktogramm:
|
| Quellcode: | |
#include <iostream.h>
#include <stdlib.h>>
void main()
{ //Eingabe
int Zahl,obergrenze;
char antw;
// Verarbeitung
do
{ //Anfang
system ("cls");
cout << "\n -----Salve-----";
cout << "\n\n ====================================================================";
cout << endl;
cout << "\n Mit diesem Programm koennen sie alle Zahlen bis zu einer "; //Begrüßungstext
cout << "\n selbst gewaehlten Obergrenze auf Primzahlen ueberpruefen.\n\n";
cout << " ====================================================================";
cout << endl;
cout << "\n\n Bitte geben sie Obergrenze ein: "; //Eingabeaufforderung
cin >> obergrenze;
cout << endl;
if (obergrenze > 0)
{ //Berechnung mit zwei Schleifen
for (Zahl=2;Zahl<=obergrenze;Zahl++)
{
antw = 'j';
for (int i=2 ; i<=Zahl-1 ; i++)
{
if ( (Zahl % i) == 0 )
{
antw = 'n'; // y ist Teiler von x
}
}
if (antw == 'j')
{
cout << Zahl << " ist eine Primzahl\n"; //Ausgabe:Primzahl
}
}
cout << "\nWollen sie die Berechnung wiederholen? (j/n)"; //Abfrage zur Programmwiederholung
cout << endl;
cin >> antw;
}// if
else
{
cout << "\nFalsche Eingabe! Wahrscheinlich negative Eingabe!Bitte Wiederholen Sie!"; /*Schleife zum
Abfangen von
falschen Eingaben*/
cout << "\nWollen sie die Berechnung wiederholen? (j/n)";
cout << endl;
cin >> antw;
}
} while (antw == 'j') ;
getch();
cout << " \n\n\t---< salve >---";
cout << endl;
cout << " \n\t<^> <(- -)> <^>\n\n\n";
getch(); // warten
}
|
|
| Verzweigungen |
| If-Verzweigungen |
Beispiel: Umrechnung von PS in KW
Struktogramm:
|
| Quellcode: | |
#include <iostream.h>
#include <stdlib.h>>
void main()
{
int PS, KW;
char i;
// Werteingabe
do
{
system ("cls");
cout << "==============================================\n";
cout << "Dieses Program berechnet die KW ihres Auto!\n";
cout << "==============================================\n";
cout << endl;
cout << "Bitte die PS angeben: ";
cin >> PS;
cout << endl;
// Verarbeitung
if (PS>0)
{
KW = PS * 0.7355;
cout << "Ihr Auto hat: " << KW << " KW\n\n\n";
cout << endl;
}
else
{
cout << "\t\t\a Falsche Eingabe\n\n\n";
cout << endl;
}
{
cout << "Wollen sie die Berechnung wiederholen? (j/n)";
cout << endl;
cin >> i;
}
} while (i == 'j');
getch(); // warten
}
|
|
| Switch-Case |
Beispiel: Klavier [Ausführen]
Struktogramm:
|
| Quellcode: | |
#include <iostream.h>
#include <stdlib.h>
#include <windows.h&gr;
void main()
{
char taste;
int f; // Frequenz
int dauer = 100; // dauer eines Tones
do // Schleife zur Programmwiederholung
{
taste = getch(); // Tasteneingabe
switch (taste) // Fallunterscheidung
{
case '1' : f = 253; break;
case '2' : f = 277; break;
case '3' : f = 293; break;
case '4' : f = 311; break;
case '5' : f = 329; break;
case '6' : f = 349; break;
case '7' : f = 369; break;
case '8' : f = 392; break;
case '9' : f = 415; break;
case '0' : f = 515; break;
default: f = 60;
}
Beep(f,dauer);
} while (taste != char (27));
}
|
|
| If-Verzweigungen |
Beispiel: BMI-Rechner [Ausführen]
Struktogramm:
|
| Quellcode: | |
#include <iostream.h>
#include <stdlib.h>
void main()
{
double koerpergewicht;
double koerpergroesse;
double bmi;
char antwort;
do
{
// Eingabe
system ("cls");
cout << "\tMit diesem Programm koennen Sie Ihren BMI berechnen!!!";
cout << "\n\t=====================================================";
cout << endl;
cout << "\n\nBitte geben sie ihr Koepergewicht ein: ";
cin >> koerpergewicht;
cout << "\nBitte geben Sie ihre Koepergroesse in Meter ein: ";
cin >> koerpergroesse;
// Verarbeitung
if ( (koerpergewicht>0) && (koerpergroesse > 0) )
{
bmi = koerpergewicht / (koerpergroesse * koerpergroesse);
// Ausgabe
cout << "\n\nIhr BMI Betraegt: ";
cout << bmi;
cout << endl;
cout << endl;
cout << endl;
cout << endl;
cout << " \t\t\t ALTER \tBMI";
cout << "\n\t\t\t 16-24 Jahre \t19-24";
cout << "\n\t\t\t 25-34 Jahre \t20-25";
cout << "\n\t\t\t 35-44 Jahre \t21-26";
cout << "\n\t\t\t 45-54 Jahre \t22-27";
cout << "\n\t\t\t 55-64 Jahre \t23-28";
cout << "\n\t\t\t >65 Jahre \t24-29";
}
else
{
cout << "\n\t\t\t >"\n\n\n\n\t\t\t\t\aFALSCHE EINGABE\n";
}
// Abfrage zur Programmwiederholung
cout << "\n\t\t\t >"\n\n\n\tWollen sie eine weitere Rechnung durchfuehren? ( j / n )";
cin >> antwort;
} while (antwort == "\n\t\t\t >'j');
}
|
|