Thema Sourcecode
Mehrseitige Kontrollstrukturen
  1. Beitragsrückerstattung
  2. Mengenrabatt
  3. Portoberechnung
  4. Taschenrechner
//Programm 1: Beitragsrückerstattung

#include <iostream.h>
#include <stdio.h>
#include <iomanip.h>
intmain()
{
int dauer, rabatt;
double beitrag, endbetrag, rabpreis;

cout <<"\nGeben Sie bitte die Beitragshoehe ein:\t";
cin >>beitrag;
cout <<"\nGeben Sie bitte die Versicherungsdauer entsprechend folgender Tabelle ein:\n";
cout <<"\nZiffer 1 fuer 0 bis 5 Jahre.";
cout <<"\nZiffer 2 fuer 6 bis 8 Jahre.";
cout <<"\nZiffer 3 fuer 9 bis 11 Jahre.";
cout <<"\nZiffer 4 fuer 12 bis 14 Jahre.";
cout <<"\nZiffer 5 fuer mehr 14 Jahre." <<endl <<endl;
cin >>dauer;

switch (dauer)
    {
    case 1:
            rabatt = 0;
            break;
    case 2:
            rabatt = 10;
            break;
    case 3:
            rabatt = 13;
            break;
    case 4:
            rabatt = 18;
            break;
    case 5:
            rabatt = 25;
            break;
    default:
            cout <<"Sie haben eine falsche Kennziffer eingegeben.";
            goto ende;
    }
rabpreis = beitrag * rabatt/100;
endbetrag = beitrag - beitrag*rabatt/100;

cout.setf(ios::fixed|ios::showpoint|ios::right);
cout.precision(2);

cout <<"\n\nBeitrag:\t" <<setw(8) <<beitrag <<" Euro";
cout <<"\nRabatt:\t\t" <<setw(8) <<rabpreis <<" Euro";
cout <<"\n===============================";
cout <<"\n\nEndpreis:\t" <<setw(8) <<endbetrag <<" Euro";

ende: getchar();
return 0;
}



zurück zur cpp-Hauptseite

//Programm 2: Mengenrabatt

#include <iostream.h>
#include <stdio.h>
#include <iomanip.h>
int main()
{
int anzahl, kennziffer, rabatt;
double stueckpreis, gesamtpreis, rabpreis, zwischensumme, steuer, endpreis;

stueckpreis = 9.95;

cout <<"\nGeben Sie bitte die Anzahl der gewuenschten Taschenrechner ein:\t";
cin >>anzahl;
cout <<"\nGeben Sie bitte die Rabattkategorie entsprechend folgender Bestelltabelle ein:\n";
cout <<"\nZiffer 1 fuer 0 bis 9 Geraete.";
cout <<"\nZiffer 2 fuer 10 bis 19 Geraete.";
cout <<"\nZiffer 3 fuer 20 bis 49 Geraete.";
cout <<"\nZiffer 4 fuer 50 bis 100 Geraete.";
cout <<"\nZiffer 5 fuer mehr als 100 Geraete." <<endl <<endl;
cin >>kennziffer;

switch (kennziffer)
    {
    case 1:
            rabatt = 0;
            break;
    case 2:
            rabatt = 10;
            break;
    case 3:
            rabatt = 15;
            break;
    case 4:
            rabatt = 20;
            break;
    case 5:
            rabatt = 25;
            break;
    default:
            cout <<"Sie haben eine falsche kennziffer eingegeben.";
            goto ende;
    }

cout <<"\n\nStueckzahl:\t" <<anzahl;

gesamtpreis = anzahl * stueckpreis;
rabpreis = gesamtpreis * rabatt/100;
zwischensumme = gesamtpreis - rabpreis;
steuer = zwischensumme * 0.16;
endpreis = zwischensumme + steuer;

cout.setf(ios::fixed|ios::showpoint|ios::right);
cout.precision(2);

cout <<"\n\nGesamtpreis:\t" <<setw(8) <<gesamtpreis <<" Euro";
cout <<"\nRabatt:\t\t" <<setw(8) <<rabpreis <<" Euro";
cout <<"\n===============================";
cout <<"\n\nZwischensumme:\t" <<setw(8) <<zwischensumme <<" Euro";
cout <<"\n\nSteuer:\t\t" <<setw(8) <<steuer <<" Euro";
cout <<"\n===============================";
cout <<"\n\nEndpreis:\t" <<setw(8) <<endpreis <<" Euro";

ende: getchar();
return 0;
}



zurück zur cpp-Hauptseite

//Programm 3: Portoberechnung

#include <iostream.h>
#include <stdio.h>
#include <iomanip.h>

int main()
{
int kennziffer, gewicht;
double preis;

cout <<"\nGeben Sie bitte ein, ob der Brief in das Inland (1) oder das Ausland (2) adressiert ist:\t";
cin >>kennziffer;
cout <<"\nGeben Sie die entsprechende Kennziffer für das Gewicht des Briefes ein:\t";
cout <<"\nBis 20 Gramm:\tZiffer 1.";
cout <<"\nBis 50 Gramm:\tZiffer 2.";
cout <<"\nBis 100 Gramm:\tZiffer 3.";
cout <<"\nBis 250 Gramm:\tZiffer 4.";
cout <<"\nBis 500 Gramm:\tZiffer 5.";
cout <<"\nBis 1000 Gramm:\tZiffer 6." <<endl <<endl;
cin >>gewicht;

if(kennziffer==1)
    {
    switch (gewicht)
    {
    case 1:
            preis = 1;
            break;
    case 2:
            preis = 1.7;
            break;
    case 3:
            preis = 2.4;
            break;
    case 4:
            preis = 3.2;
            break;
    case 5:
            preis = 4.0;
            break;
    case 6:
            preis = 4.8;
            break;
    default:
            cout <<"Sie haben eine falsche kennziffer eingegeben.";
            goto ende;
    }
    }
else if (kennziffer==2)
    {
    switch (gewicht)
    {
    case 1:
            preis = 1.4;
            break;
    case 2:
            preis = 2.1;
            break;
    case 3:
            preis = 2.8;
            break;
    case 4:
            preis = 5.0;
            break;
    case 5:
            preis = 9.4;
            break;
    case 6:
            preis = 16.5;
            break;
    default:
            cout <<"Sie haben eine falsche kennziffer eingegeben.";
            goto ende;
    }
    }
else
    {
    cout <<"\nWo soll Ihr Brief denn sonst hin???";
    goto ende;
    }

cout.setf(ios::fixed|ios::showpoint|ios::right);
cout.precision(2);

cout <<"\n\nDas Porto Ihres Briefes betraegt:\t" <<setw(5) <<preis <<" Euro";

ende: getchar();
return 0;
}




zurück zur cpp-Hauptseite

//Programm 4: Taschenrechner

#include <iostream.h>
# include <ctype.h>
# include <math.h>
#include <stdio.h>
#include <stdlib.h>

int main()
{
char buchstabe, rechnen;
int c, zahl, u, v;
double a, b, ergebnis;

do
{
cout <<"\nWelche Rechenoperation wollen Sie ausfuehren?\nWaehlen Sie aus der nachfolgenden Liste aus";
cout <<"\nund geben Sie das entsprechende Zeichen ein.\nBestaetigen Sie Ihre Wahl mit der ENTER-Taste.";
cout <<"\nAddition:\t\t\t\t+";
cout <<"\nSubtraktion:\t\t\t\t-";
cout <<"\nMultiplikation:\t\t\t\t*";
cout <<"\nDivision:\t\t\t\t/";
cout <<"\nPotenz:\t\t\t\t\tp";
cout <<"\nRestwert:\t\t\t\tr";
cout <<"\nUmrechnung in das Hexadezimalsystem:\tu" <<endl <<endl;

cin >>rechnen;

switch (rechnen)
    {
    case '+':
        cout <<"\nGeben Sie die erste Zahl ein:\t";
        cin >>a;
        cout <<"Geben Sie die zweite Zahl ein:\t";
        cin >>b;
        ergebnis = a + b;
        break;
    case '-':
        cout <<"\nGeben Sie die erste Zahl ein:\t";
        cin >>a;
        cout <<"Geben Sie die zweite Zahl ein:\t";
        cin >>b;
        ergebnis = a - b;
        break;
    case '*':
        cout <<"\nGeben Sie die erste Zahl ein:\t";
        cin >>a;
        cout <<"Geben Sie die zweite Zahl ein:\t";
        cin >>b;
        ergebnis = a * b;
        break;
    case '/':
        cout <<"\nGeben Sie die erste Zahl ein:\t";
        cin >>a;
        cout <<"Geben Sie die zweite Zahl ein:\t";
        cin >>b;
        ergebnis = a / b;
        break;
    case 'p':
        cout <<"\nGeben Sie die erste Zahl ein:\t";
        cin >>a;
        cout <<"Geben Sie die zweite Zahl ein:\t";
        cin >>b;
        ergebnis = pow(a,b);
        break;
    case 'r':
        cout <<"\nGeben Sie die erste Zahl ein:\t";
        cin >>u;
        cout <<"Geben Sie die zweite Zahl ein:\t";
        cin >>v;
        ergebnis = u % v;
        break;
    case 'u':
        cout <<"\nGeben Sie die Dezimalzahl ein, die als Hexadezimalzahl dargestellt werden soll:\t";
        cin >>c;
        cout.setf(ios::showbase);
        cout <<hex;
        cout <<c;
        goto ende;
        break;
    default:
        cout <<"\nSie haben keine der moeglichen Rechenoperationen gewaehlt.";
        goto ende;
    }

cout.setf(ios::fixed);
cout <<dec;

cout <<"\n\nDas Ergebnis lautet:\t" <<ergebnis;

ende:   cout <<"\n\nWollen Sie weitermachen?\n\t(J)a\toder\t(N)ein?";
        cin >>buchstabe;
buchstabe = toupper(buchstabe);
}

while (buchstabe == 'J');

cout <<"\n\nAuf Wiedersehen!";

return 0;
}



zurück zur cpp-Hauptseite