Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 03:59

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

Advertisement



Taschenrechner

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

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jul 2012
Posts: 6
Received Thanks: 0
Exclamation Taschenrechner

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()
{

cout << "Geben sie die Art der Rechnung ein :\n [1]: Addition\n [2]: Subtraktion\n [3]: Multiplikation\n [4]: Division\n" << '\n';
if ((cin >> Eingabe) == false)
{
cerr << "FEHLER" << '\n';
}
else
{
switch (Eingabe)
{
case 1:
cout << "Sie haben Addition gewählt. Geben sie die 2 Zahlen ein die sie addieren möchten" << '\n';
if ((cin >> Zahl1) == false)
{
cerr << "Es muss eine Zahl eingegeben werden!" << '\n';
}
else
{
if ((cin >> Zahl2) == false)
{
cerr << "Es muss eine Zahl eingegeben werden!" << '\n';
}
else
{
Ergebnis = Zahl1 + Zahl2;
cout << "Dass Ergebnis beträgt : " << Ergebnis << '\n';
}
}
break;

case 2:
cout << "Sie haben Subtraktion gewählt. Geben sie die 2 Zahlen ein die sie subtrahieren möchten" << '\n';
if ((cin >> Zahl1) == false)
{
cerr << "Es muss eine Zahl eingegeben werden!" << '\n';
}
if ((cin >> Zahl2) == false)
{
cerr << "Es muss eine Zahl eingegeben werden!" << '\n';
}
else
{
Ergebnis = Zahl1 - Zahl2;
cout << "Dass Ergebnis beträgt : " << Ergebnis << '\n';
}
break;

case 3:
cout << "Sie haben Multiplikation gewählt. Geben sie die 2 Zahlen ein die sie multiplizieren möchten" << '\n';
if ((cin >> Zahl1) == false)
{
cerr << "Es muss eine Zahl eingegeben werden!" << '\n';
}
if ((cin >> Zahl2) == false)
{
cerr << "Es muss eine Zahl eingegeben werden!" << '\n';
}
else
{
Ergebnis = Zahl1 * Zahl2;
cout << "Dass Ergebnis beträgt : " << Ergebnis << '\n';
}
break;
case 4:
cout << "Sie haben Division gewählt. Geben sie die 2 Zahlen ein die sie dividieren möchten(Keine Nullen)" << '\n';
if ((cin >> Zahl1) == false || Zahl1 == 0)
{
cerr << "Fehler bei Eingabe" << '\n';
}
if ((cin >> Zahl2) == false || Zahl2 == 0)
{
cerr << "Fehler bei Eingabe" << '\n';
}
else
{
Ergebnis = Zahl1 / Zahl2;
cout << "Dass Ergebnis beträgt : " << Ergebnis << '\n';
}
break;
}cout << "Willst du jetzt nochmal was rechnen oder das Programm schließen??" << '\n';
}
return 0;
}

Ich würde mich sehr über verbesserungsvorschläge etc freuen! (PS: er ist noch nicht ganz fertig)

Danke im Voraus
Grapefruit97 is offline  
Old 07/15/2012, 19:37   #2

 
マルコ's Avatar
 
elite*gold: 1329
Join Date: Jun 2009
Posts: 1,873
Received Thanks: 960
Vorschlag 1) benutz die [CODE] Tags
2) Benutz functions, um den Code übersichtlicher und besser wiederverwendbar zu machen
3) Mach dann noch ne TR-Klasse, so dass es wirklich sauber wiederverwendbar ist.

Natürlich mein ich mit "wiederverwendbar", dass du es üben sollst. Weil brauchen wirst du das wahrscheinlich nicht mehr^^

Desweiteren empfehle ich, cin, so wie scanf in C, immer zu flushen.

Wie das alles geht? GOOGLE ; )
Oder frag dein Buch, das du sicherlich benutzt, um C++ zu lernen.
マルコ is offline  
Old 07/16/2012, 15:21   #3
 
elite*gold: 0
Join Date: Jul 2012
Posts: 6
Received Thanks: 0
Meinst du mit ner Tr klasse ein template?
Grapefruit97 is offline  
Old 07/16/2012, 23:02   #4

 
マルコ's Avatar
 
elite*gold: 1329
Join Date: Jun 2009
Posts: 1,873
Received Thanks: 960
Nein, eine Klasse.
Code:
class CCalculator
{
private:
  int num1,num2;
public:
  CCalculator();
  int multiply();
  void setNumbers(int, int);
};
マルコ is offline  
Old 07/17/2012, 18:19   #5
 
elite*gold: 0
Join Date: Jul 2012
Posts: 56
Received Thanks: 5
Warum kennt er wohl keine Klassen?
Quote:
Hallo, ich bin ein noch ziemlicher Anfänger in C++.
Verbesserungsvorschläge kann man hier nicht geben. Ein Anfänger sollte erstmal auf seiner Weise die Sprache lernen, da ist es momentan egal, welchen Programmierstil du verwendest.(Solang du schlechte Funktionen dir nicht angewöhnst.)


Over. And out. Hg(CNO)2
Hg(CNO)2 is offline  
Old 07/17/2012, 19:28   #6
 
.SkyneT.'s Avatar
 
elite*gold: 273
Join Date: Sep 2010
Posts: 1,831
Received Thanks: 786
Da geb ich dem Knallquecksilber über mir Recht.
OOP kann man gleich mitlernen muss man aber nicht.

Stil sollte man aber von Anfang an so gut wie möglich lernen,
sonst gewöhnt man sich noch irgend nen Schwachsinn an...
.SkyneT. is offline  
Thanks
1 User
Old 07/19/2012, 17:04   #7
 
elite*gold: 0
Join Date: Jul 2012
Posts: 6
Received Thanks: 0
Was muss ich denn eigl als grundlage in c++ alles wissen? was ist wichtig und was nicht unbedingt???
Grapefruit97 is offline  
Old 07/19/2012, 17:31   #8
 
elite*gold: 0
Join Date: Jan 2012
Posts: 759
Received Thanks: 416
Quote:
Originally Posted by Grapefruit97 View Post
Was muss ich denn eigl als grundlage in c++ alles wissen? was ist wichtig und was nicht unbedingt???
Quote:
Originally Posted by マルコ View Post
Nein, eine Klasse.
Code:
class CCalculator
{
private:
  int num1,num2;
public:
  CCalculator();
  int multiply();
  void setNumbers(int, int);
};
Eine Klasse die ... multipliziert?!

Schreibst du statt
Code:
int frameWidth = rectWidth * rectCount
dann auch
Code:
Calculator calc();
calc.setNumbers(rectWidth, rectCount);
int frameWidth = calc.multiply();
? Und für eine Addition zweier Zahlen verwendest du dann kein "+" sondern schreibst dir die Klasse CAdder?
dowhile is offline  
Old 07/19/2012, 22:38   #9

 
マルコ's Avatar
 
elite*gold: 1329
Join Date: Jun 2009
Posts: 1,873
Received Thanks: 960
Quote:
Originally Posted by dowhile View Post
Eine Klasse die ... multipliziert?!

Schreibst du statt
Code:
int frameWidth = rectWidth * rectCount
dann auch
Code:
Calculator calc();
calc.setNumbers(rectWidth, rectCount);
int frameWidth = calc.multiply();
? Und für eine Addition zweier Zahlen verwendest du dann kein "+" sondern schreibst dir die Klasse CAdder?
Ich glaub, du verfehlst das Topic -.-
Es war ein Beispiel, wie eine Klasse aussehen kann. Vollkommen ungeachtet der Funktionen. Flame also nicht rum.


Und ja, er hat nach Verbesserungsvorschlägen gefragt. Und eine Klasse ist eine Verbesserung. Wie/wann/wo ers lernt - darüber hab ich keine Aussage getroffen. Wobei ich empfehle, gerade als Anfänger möglichst früh sich das Klassenprinzip anzueignen und zu verwenden.
マルコ is offline  
Old 07/22/2012, 09:37   #10
 
elite*gold: 0
Join Date: Jul 2012
Posts: 6
Received Thanks: 0
Was ist aber grundlage in C++? was muss ich beherrschen?
Grapefruit97 is offline  
Old 07/22/2012, 12:35   #11


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
Quote:
Was muss ich denn eigl als grundlage in c++ alles wissen? was ist wichtig und was nicht unbedingt???
Alles ist wichtig.

Quote:
Und ja, er hat nach Verbesserungsvorschlägen gefragt. Und eine Klasse ist eine Verbesserung. Wie/wann/wo ers lernt - darüber hab ich keine Aussage getroffen. Wobei ich empfehle, gerade als Anfänger möglichst früh sich das Klassenprinzip anzueignen und zu verwenden.
OOP ist kein göttliches Sprachmittel, das immer und überall am besten passt und deshalb jedem Projekt aufgezwungen werden sollte.
MrSm!th is offline  
Thanks
5 Users
Old 07/23/2012, 17:57   #12
 
elite*gold: 0
Join Date: Mar 2012
Posts: 26
Received Thanks: 3
Quote:
OOP ist kein göttliches Sprachmittel, das immer und überall am besten passt und deshalb jedem Projekt aufgezwungen werden sollte.
Das stimmt!
ehauser is offline  
Thanks
1 User
Reply

Tags
c++, taschenrechner


Similar Threads Similar Threads
[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?
Spielen auf dem Taschenrechner
06/13/2011 - Technical Support - 6 Replies
Hallo ich habe auf youtube ein paar videos gesehen wie Leute Spiele auf ihrem Taschenrechner spielen Ich habe einen Casio fx-85MS Wenn dafür jemand einen code für ein game kennt währe nice Quelle:YouTube - &#x202a;My DIY Calculator Game (NO Computer needed)&#x202c;&rlm; oder:YouTube - &#x202a;Play Pong On Calculators!&#x202c;&rlm;
Taschenrechner Buttons
06/08/2011 - AutoIt - 6 Replies
hi ich wollte grad nen taschenrechner programmieren, aber irgendwo is nen fehler^^ bei case 2,3 und 4 steht absichtilich noch nichts. kann mir einer dann auch gleich schreiben wies richtig wäre? wäre nett :) #include <GUIConstants.au3>
[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 +1. The time now is 04:00.


Powered by vBulletin®
Copyright ©2000 - 2026, 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 ©2026 elitepvpers All Rights Reserved.