Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 06:32

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



C Taschenrechner

Discussion on C Taschenrechner within the C/C++ forum part of the Coders Den category.

Closed Thread
 
Old   #1
 
elite*gold: 80
Join Date: Dec 2012
Posts: 480
Received Thanks: 61
C Taschenrechner

Hallo undzwar hab ich folgendes Problem immer bevor er nachfrägt ob man weiterrechnen will schließt sich dass programm
danke der wos gemacht hat bekommt ne kleine spende kompletter code bitte
Code:
#include <stdio.h> //Information zur Standard-Ein / Ausgabe-Bibliothek einfuegen
#include <math.h>  
int main(void) //Anweisungen von Main stehen in geschweiften Klammern

{

double num1, num2, ergebnis; // double= Gleichpunktwert mit doppelter genauigkeit, num1, num2, ergebnis = die Namen die unten bezeichnet werden
char op, janein; // char = ein einzelnes zeichen, op --> operation
int errechnet = 1;
num1 = 0; // gibt am dass num1 = 0
num2 = 0; // gibt am dass num2 = 0
ergebnis = 0;

do{
printf("Taschenrechner von Pascal Geben sie einen Operanden ein:\n");// printf gibt die Zeile aus die Angezeigt wird (frägt nach dem operator)
scanf("%c", &op);
printf("Geben sie die erste Zahl ein:\n");
scanf("%lf", &num1); //suche die dezimalzahl die eingetragen wurde
printf("Geben sie zweite Zahl ein:\n");
scanf("%lf", &num2); //suche die dezimalzahl die eingetragen wurde

switch(op){

case '+': // (+)gibt an dass es addieren soll
ergebnis = num1 + num2;
break;

case '-': // (-)gibt an dass es subtrahieren soll
ergebnis = num1 - num2;
break; //Pause oder verlassen der Schleife


case '*':// (*)gibt an dass es multiplzieren soll 
ergebnis = num1 * num2;
 if (ergebnis > 0) 
break; //Pause oder verlassen der Schleife


case '/': //  (/)gibt an dass es teilen soll 
if(num2 == 0){errechnet = 0;
} else{
ergebnis = num1 / num2;
};
break; //Pause


default:
errechnet = 0;

};

if (errechnet == 1)
printf ("Ergebnis = %.3lf\n", ergebnis);
else if(op == '/')
printf("Fehler: Division durch Null\n"); 
else printf("Falsche Eingabe\n");


printf("wollen sie weiterrechnen(J/n)\n");
scanf("%c", &janein );
if( janein == 'j' )
	errechnet = 1;
else
		errechnet = 0;
}while(errechnet==1);


return 0;// muss immer angegeben werden sonst funktioniert dass Programm nicht

}
[SA]ChilleXx is offline  
Old 11/20/2013, 10:28   #2
 
XxharCs's Avatar
 
elite*gold: 34
Join Date: Apr 2011
Posts: 1,475
Received Thanks: 1,227
chars in einer if-Anweisung vergleicht man mit zB. der strcmp() Funktion
Code:
...
if(strcmp(janein, 'j') == 0)
{
    errechnet = 1;
}else
{
    errechnet = 0;
}
Ebenfalls kannst du vor return 0; und überall wo sich dein Programm beenden könnte, ein getchar(); verwenden, damit du das programm pausierst bevor es geschlossen wird.

Da du in C codest und du evtl. Platform unabhängigen Code schreiben willst, dann verwende lieber ein return EXIT_SUCCESS; statt return 0; weil nicht jedes Betriebssystem das return 0; also Erfolgreich beendet ansieht. (Nur ein Tipp fürs schöne programmieren)
XxharCs is offline  
Old 11/20/2013, 12:32   #3


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,904
Received Thanks: 25,394
Der Code ist ziemlicher Unsinn und hier wird dir auch keiner einen fertigen Code hinklatschen.
Zudem hast du schon einen Thread zu diesem Thema.

Quote:
Originally Posted by XxharCs View Post
chars in einer if-Anweisung vergleicht man mit zB. der strcmp() Funktion
Code:
...
if(strcmp(janein, 'j') == 0)
{
    errechnet = 1;
}else
{
    errechnet = 0;
}
Nein, tut man nicht.
MrSm!th is offline  
Closed Thread


Similar Threads Similar Threads
[C++] Taschenrechner neustarten
10/07/2013 - C/C++ - 16 Replies
Hey, ich habe eine Konsolenanwendung mit C++ geschrieben. Der Taschenrechner kann die Grundrechenarten und ein paar andere Funktionen aber das ist auch nicht das Hauptthema. Wenn ich eine Funktion wähle (z.b Multiplizieren) dann rechnet er. Am Ende der If-Anweisung habe ich system("pause") und return 0, also beendet er nach jeder Rechenart das Programm. Dies möchte ich aber ändern. Ich möchte das wenn man, z.b Multiplizieren, ausgeführt hat das Programm sozusagen "neustartet" also von...
Taschenrechner
07/23/2012 - C/C++ - 11 Replies
Hallo, ich bin ein noch ziemlicher Anfänger in C++. Heute habe ich einen Taschenrechner programmiert( er kann nur zwei zahlen bearbeiten). : #include <iostream> using namespace std; int Zahl1, Zahl2, Eingabe, Ergebnis; char Antwort; int main() {
[B]Taschenrechner[S]26k EG
10/13/2011 - elite*gold Trading - 18 Replies
http://www.elitepvpers.com/theblackmarket/treasure /66318 Treasure oben ;) Wer kauft bekommt PN mit link. Screens gibts auch nicht ;) Was kann der Taschenrechner? Plus und minus rechnen!
[VC++] Taschenrechner mit GUI
07/08/2011 - C/C++ - 3 Replies
Hey Leute also ich bin noch ein ziemlicher Anfänger in C++ und bin grad dabei, einen Taschenrechner zu erstellen. Er soll eben ne Oberfläche haben und nicht als Konsolenanwendung abgespielt werden. Ich hab jetzt ein Textfeld, 0-9 Buttons als Ziffern und die Rechenarten. Dann noch "Berechnen" und "Löschen", damit das Textfeld geleert wird und man von neu rechnen kann. Nun zu meiner Frage. Mit welchem Befehl erreiche ich, dass die Zahl, sobald ich sie anklicke, im Textfeld erscheint?
[HELP]Taschenrechner
03/09/2011 - AutoIt - 2 Replies
Also ich wollte nen kleinen Taschenrechner Skripten. Hab jz ein Problem. Undzwar soll in die hinterste Inputbox der Zeile das Ergebnis angezeigt werden. Wie kann ich das machen? #include <ButtonConstants.au3> #include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> #Region ### START Koda GUI section ### Form= ;------------------------------------------------ ----GUI---------------------------------------



All times are GMT +2. The time now is 06:32.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.