Fusescalc 0.4 ;)

Dieses Thema im Forum "C/C++" wurde erstellt von cmk, 28.10.2002.

  1. cmk

    cmk Benutzertitel:

    Dabei seit:
    01.10.2002
    Beiträge:
    209
    Zustimmungen:
    0
    HIer die neue Fassung ;)

    c++ macht irgendwie spass ;) - ist alles noch sehr primitiv ich weiß - aber ich finde ein kleines nützliches platzsparendes tool :)

    eine frage: wenn ich 5 / 2 rechne, dann kommt 2 raus weil int keine fließkommazahlen unterstüzt - welcher typ unterstützt das?

    /***************************************************************************
    main.cpp - description
    -------------------
    begin : Mon Oct 28 19:35:48 CET 2002
    copyright : (C) 2002 by Christian Kienle AND unixboard.de MEMBERS
    email : crono@fireworxs.de
    ***************************************************************************/

    /***************************************************************************
    * *
    * This program is free software; you can redistribute it and/or modify *
    * it under the terms of the GNU General Public License as published by *
    * the Free Software Foundation; either version 2 of the License, or *
    * (at your option) any later version. *
    * *
    ***************************************************************************/

    #ifdef HAVE_CONFIG_H
    #include <config.h>
    #endif

    #include <iostream.h>
    #include <stdlib.h>

    int main(int argc, char *argv[])
    {
    int a,b,c;
    /*
    a == ERSTE EINGABE
    b == ZWEITE EINGABE
    c == ERGEBNIS
    */
    int status = 1;
    /*
    status == EXIT OR NOT
    */
    char op;
    /*
    op == OPERATOR
    */
    cout << "##### FuselCalc 0.4 #####\n\n";
    cout << "ENTER A NUMBER AND THEN PRESS ENTER: ";
    cin >> a;
    cout << "OPERATOR EG: (/,*.-,+): ";
    cin >> op;
    cout << "ENTER ANOTHER NUMBER AND THEN PRESS ENTER: ";
    cin >> b;
    switch ( op )
    {
    case '/' : c = a/b; break;
    case '*' : c = a*b; break;
    case '-' : c = a-b; break;
    case '+' : c = a+b; break;
    }
    /*
    HERAUSFINDEN WELCHER OPERATOR VERWENDET WURDE
    */
    cout << "\n**************************************************************";
    cout << "\nRESULT OF:\n";
    cout << a;
    cout << " ";
    cout << op;
    cout << " ";
    cout << b;
    cout << " = ";
    cout << c;
    cout << "\n**************************************************************";

    while(status != 2)//SOLGANGE WEITERRECHEN WIE status != 2
    {
    cout << "\n\nGOING ON? PRESS ANY INT FOR YES OR PRESS [2] FOR EXIT: ";
    cin >> status;
    if(status != 2)//status != 2 ALSO WEITER MACHEN
    {
    cout << "\n\nOPERATOR EG: (/,*.-,+): ";
    cin >> op;
    cout << "ENTER A NUMBER AND THEN PRESS ENTER: ";
    cin >> b;
    switch ( op )
    {
    case '/' : c = c/b; break;
    case '*' : c = c*b; break;
    case '-' : c = c-b; break;
    case '+' : c = c+b; break;
    }
    /*
    HERAUSFINDEN WELCHER OPERATOR VERWENDET WURDE
    */
    cout << "\n**************************************************************";
    cout << "\nNEW RESULT: ";
    cout << c;
    cout << "\n**************************************************************";
    }
    else //WENN status == 2 DANN EXIT
    {
    cout << "\n\nTHANK YOU FOR USING FuselCalc 0.4";
    }
    }


    return 0;
    }
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. rup

    rup Haudegen

    Dabei seit:
    10.04.2002
    Beiträge:
    627
    Zustimmungen:
    0
    Ich hab's mir nicht genau durchgelesen, aber du musst eine Division durch null noch abfangen.
     
  4. #3 saintjoe, 29.10.2002
    saintjoe

    saintjoe Guest

    Der Typ der Fliesskommazahlen unterstützt heisst glaub ich Float. :)
     
  5. cmk

    cmk Benutzertitel:

    Dabei seit:
    01.10.2002
    Beiträge:
    209
    Zustimmungen:
    0
    oke ;) division / 0 werde ich versuchen noch abzufangen.

    danke saintjoe für den tipp ;)

    0.5 kommt bald ;)
     
  6. rup

    rup Haudegen

    Dabei seit:
    10.04.2002
    Beiträge:
    627
    Zustimmungen:
    0
    float, double und long double, je nach Groesse, schau in dein C/C++ Buch c.a. Seite 20 :D
     
  7. merlin

    merlin Grünschnabel

    Dabei seit:
    21.10.2002
    Beiträge:
    2
    Zustimmungen:
    0
    tach auch =)
    also so als tipps:

    nicht alles in eine function schreiben, das ist unuebersichtlich
    ausserdem tauchen gleiche codesegmente mehrfach auf, das ist
    ueberfluessig, und viel zu viel arbeit =)

    die typen, die fliesskomma koennen sind double und float .
    alternativ mit a/b und a%b und dann das zusammenbasteln ;) dann bleibst du bei int =)

    so long
    merlin
     
  8. cmk

    cmk Benutzertitel:

    Dabei seit:
    01.10.2002
    Beiträge:
    209
    Zustimmungen:
    0
    hehe danke ;)

    schöne tipps habt ihr mir da gegeben - danke.

    Werde mich mal hinsetzten und rumwerkeln.

    ehhhmmm

    es gibt doch eine header datei <math.h> heisst die glaub ich. Die hat doch verschiedene mathematische formeln als funktionen abrufbereit - ode?

    find ich da n tut über die herader datei?
     
  9. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  10. mapiox

    mapiox Tripel-As

    Dabei seit:
    21.04.2002
    Beiträge:
    176
    Zustimmungen:
    0
    hab leider keinen link :( aber hier mal das wichtigste aus der math.h
    Code:
    double fabs (double)						//Absolutwert
    double ceil (double d)						//kleinster Integer
    double floor (double d)						//größter Integer
    double sqrt (double d)						//Quadratwurzel
    double pow (double d, double d)					//x hoch y
    double cos (double d)						//Cosinus
    double sin (double d)						//Sinus
    double tan (double d)						//Tangens
    double acos (double d)						//Arcus-Cosinus
    double asin (double d)						//Arcus-Sinus
    double atan (double d)						//Argus-Tangens
    double exp (double)						//Exponentialfunktion zur Basis e
    double log (double d)						//Logarithmus zur Basis e
    double log10 (double d)						//Logarithmus zur Basis 10
    
     
  11. rup

    rup Haudegen

    Dabei seit:
    10.04.2002
    Beiträge:
    627
    Zustimmungen:
    0
Thema:

Fusescalc 0.4 ;)