C++ Fragen über Fragen

Dieses Thema im Forum "Programmieren" wurde erstellt von mpjltd, 8. Juni 2005.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. mpjltd

    mpjltd ROM

    Registriert seit:
    8. Juni 2005
    Beiträge:
    2
    Hallo alle zusammen,
    also ich bin ein Quereinsteiger in die Ausbildung zu FachInformatiker AE und hab nun das Problem, das ich das fast komplette Jahr c++ nachholen muss. meine erste aufgabe war ein Taschenrechner zu schreiben, naja, billig sagt jetzt jeder, nun für mich halt nicht.das habe ich soweit:
    /* MICROSOFT VISUAL C++ 2005 : Defines the entry point for the console
    application.
    This file was created with VISUAL C++ 2005 Express BETA2
    The project files are not compatible to older version of
    Visual C++ or Visual Studio .net 2003
    Credits: 3 Buecher , lesen, ausprobieren und versuchen zu verstehen
    */
    //Erst Dateien einbinden

    //#include "stdafx.h" //only visual c++ express

    #include <cstdlib>
    #include <iostream>
    #include <stdio.h>
    #include <conio.h>
    #include <stdlib.h>

    using namespace std;
    //Globale Variable
    const float PI=3.14f;

    //Funktion Dreieck
    float berechneDreieck(float h, float b)
    {
    float a=h*(b/2);
    return a;
    }
    //Funktion Rechteck
    float berechneFlaeche(float l, float b)
    {
    float a=l*b;
    return a;
    }
    //Funktion Kreis
    float berechneFlaecheKreis(float r)
    {
    float a=r*r*PI;
    return a;
    }

    int main()
    {
    int menu=0;
    char option;
    char q='n',c='j'; // quit+continue
    // ANFANG MENUE 1
    cout<<"Willkommen\n\n";
    cout<<"Mit diesem Programm sind Sie in der Lage\n";
    cout<<"die Flaechen vom Dreieck, Rechteck und Kreis\n";
    cout<<"zu berechnen\n\n";
    cout<<"Wenn Sie jetzt eine Berechnung durchfuehren moechten \n";
    cout<<"druecken Sie j fuer ja oder n fuer nein\n";
    cin>>option;
    // ENDE MENUE 1
    // ANFANG while-SCHLEIFE
    while(option=='j')
    {
    // ANFANG MENUE 2
    cout<<"\nHauptprogramm\n";
    cout<<"\nDruecken Sie 1 fuer Flaechenberechnung Kreis\n";
    cout<<"Druecken Sie 2 fuer Flaechenberechnung Dreieck\n";
    cout<<"Druecken Sie 3 fuer Flaechenberechnung Rechteck\n\n";
    cout<<"Ihre Eingabe bitte: ";
    cin>>menu;
    cout<<"\n";
    switch(menu)
    {
    case 1:
    float radius;
    cout<<"Berechnung der Flaeche eines Kreises\n";
    cout<<"Info: Berechnung erfolgt ohne Angabe von Masseinheiten\n\n";
    /* Werte einlesen */
    cout<<"Radius: ";
    cin>>radius;
    /* Fläche berechnen */
    cout<<"Flaeche des Kreises betraegt : "<<berechneFlaecheKreis(radius)<<endl;
    break;
    case 2:
    float hoehe, breite;
    cout<<"Berechnung der Flaeche eines Dreiecks\n";
    cout<<"Info: Berechnung erfolgt ohne Angabe von Masseinheiten\n\n";
    /* Werte einlesen */
    cout<<"Hoehe des Dreiecks: ";
    cin>>laenge;
    cout<<"Breite des Dreiecks: ";
    cin>>breite;
    /* Fläche berechnen */
    cout<<"Flaeche des Rechtecks betraegt : "<<berechneDreieck(breite,laenge)<<endl;
    break;
    case 3:
    //float laenge;
    cout<<"Berechnung der Flaeche eines Rechtecks\n";
    cout<<"Info: Berechnung erfolgt ohne Angabe von Masseinheiten\n\n";
    /* Werte einlesen */
    cout<<"Laenge des Rechtecks: ";
    cin>>laenge;
    cout<<"Breite des Rechtecks: ";
    cin>>breite;
    /* Fläche berechnen */
    cout<<"Flaeche des Rechtecks betraegt : "<<berechneFlaeche(breite,laenge)<<endl;
    break;
    default:
    cout<<"\a Falsche Auswahl\a\n";
    break;
    }
    // ENDE MENUE 2
    cout<<"\n\nWenn Sie jetzt eine ";
    cout<<"Berechnung durchfuehren moechten \n";
    cout<<"druecken Sie j fuer ja oder n fuer nein\n";
    cin>>option;
    }
    // ENDE SCHLEIFE
    system("PAUSE");
    return EXIT_SUCCESS;
    }

    jetzt soll ich menue1 und menue2 als funktion machen, aber irgendwie blicke ich da nicht mehr durch.

    kann mir bitte jemand helfen? nein, das sind keine Hausaufgaben.

    vielen dank
    markus
     
  2. albi.1stein

    albi.1stein Kbyte

    Registriert seit:
    13. Mai 2005
    Beiträge:
    485
    So, ich weiss zar net, ob ich dein problem richtig versteh, aber das menu auszulagern is doch nix andres als deine Berechnungen, die hast du doch auch als funktionen gecodet....:confused:
    das menu geht genausso, z.B.
    Code:
    int menu2(void)
    {
    int temp;
    cout<<"++++++";
    cout<<"######";
    cin>>temp;
    return temp;
    }
    den rückgabewert dann zum switchen nutzen, oder halt den switch mit einbauen.

    ODER WAS MEINST DU?

    Noch nen andrer Tipp. Ich würde statt der Ja/nein abfrage einen endlosschleife coden, und dann als auswahlmöglichkeiten im menu, die verschiedenen rechenfunktionen und eine funktion zum beenden. sieh dir mal mein beispiel an. da ist das menu auch ausgelagert.
     

    Anhänge:

  3. mpjltd

    mpjltd ROM

    Registriert seit:
    8. Juni 2005
    Beiträge:
    2
    hallo,

    ja das meinte ich! ich werde versuchen das jetzt einzuarbeiten 1mal meine version , dein beispiel muss ich mir noch verinnerlichen, grins

    sorry, ich weiss das sind dämliche fragen, und ich habs halt noch net drauf mich vernünftig in c++ sprache zu sprechen (deklarieren rückgabewert übergeben)
     
Status des Themas:
Es sind keine weiteren Antworten möglich.

Diese Seite empfehlen