Not a member yet? Register for your free account!


Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 16:24

  • Did you know? elitepvpers has its own image host, epvpimg.com.

 

Taschenrechner

This is a discussion on Taschenrechner within the C/C++ forum part of the Coders Den category; Hallo, ich bin ein noch ziemlicher Anfänger in C++. Heute habe ich einen Taschenrechner programmiert( er kann nur zwei zahlen ...

Reply
 
Thread Tools
Old 07-15-2012, 16:30   #1
Junior Member
 
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
 
Join Date: Jun 2009
Posts: 1,333
Received Thanks: 773
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 online now  
Old 07-16-2012, 15:21   #3
Junior Member
 
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
 
Join Date: Jun 2009
Posts: 1,333
Received Thanks: 773
Nein, eine Klasse.
Code:
class CCalculator
{
private:
  int num1,num2;
public:
  CCalculator();
  int multiply();
  void setNumbers(int, int);
};
マルコ is online now  
Old 07-17-2012, 18:19   #5
Member
 
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
̔̕̚̕̚҉ ҉̵̞̟̠̖̗̘̙̜̝̞̟̠͇̊̋
 
Join Date: Sep 2010
Posts: 1,366
Received Thanks: 604
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 online now  
Thanks
1 User
Grapefruit97 (07-18-2012)
Old 07-19-2012, 17:04   #7
Junior Member
 
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
Senior Member
 
Join Date: Jan 2012
Posts: 125
Received Thanks: 57
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
 
Join Date: Jun 2009
Posts: 1,333
Received Thanks: 773
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 online now  
Old 07-22-2012, 09:37   #10
Junior Member
 
Join Date: Jul 2012
Posts: 6
Received Thanks: 0
Was ist aber grundlage in C++? was muss ich beherrschen?
Grapefruit97 is offline  
Reply

Tags
c++, taschenrechner

Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
[B]Taschenrechner[S]26k EG .2good4you111 elite*gold Trading 18 10-13-2011 22:56
[VC++] Taschenrechner mit GUI _Roman_ C/C++ 3 07-08-2011 20:20
Spielen auf dem Taschenrechner x3_BassHunter_x3 Technical Support 6 06-13-2011 16:29
Taschenrechner Buttons SourZ AutoIt 6 06-08-2011 16:28
[HELP]Taschenrechner xEr0r AutoIt 2 03-09-2011 21:24




All times are GMT +2. The time now is 16:24.


Powered by vBulletin®
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.