Hallo The User!
Ich danke dir, für deine ausführliche Antwort.
lg
Oneida
-close-
Hallo The User!
Ich danke dir, für deine ausführliche Antwort.
lg
Oneida
-close-
du meinst 'januar' geht nicht?
Hallo allerseits,
habe ein Problem mit dem Switch.
bei case 'november': 30; hält der compiler und meint:" duplicate case value".
Hier mein Code:
#include <cstdlib>
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
int main()
{
int tag;
int monat;
int jahr;
cout << " Geben Sie das Datum ein " <<endl; // eingaben
cout << " den Tag: ";
cin >> tag;
cout << " den Monat: ";
cin >> monat;
cout << " das Jahr: ";
cin >> jahr;
int n;
switch (monat)
{
case 'januar': 31;
n=31;
break;
case 'februar': 28;
n= 28;
break;
case 'märz': 31;
break;
case 'april': 30;
n= 30;
break;
case 'mai': 31;
n= 31;
break;
case 'juni': 30;
n= 30;
break;
case 'juli': 31;
n= 31;
break;
case 'august': 31;
n= 31;
break;
case 'september': 30;
n= 30;
break;
case 'oktober': 31;
n= 31;
break;
case 'november': 30;
n = 30;
break;
case 'dezember': 31;
n = 31;
}
int ges=0;
while (ges==0)
{
ges= tag+n; //n die Anzahl der Tage des Monats
ges= ges/7;
cout << ges;
}
Alles anzeigen
Die Funktion ist natürlich noch nicht fertig, trotzdem sollte sie soweit funktionieren.
Hoffe jemand kann mir hier weiterhelfen
Hallo,
vielen dank, war wirklich nur die Umwandlung von int in char.
Hier der funktionierende code:
#include <cstdlib>
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
int main()
{
cout << " Geben Sie die erste Zahl ein: ";
double a,b,erg;
char op;
cin >> a;
cout << " Geben Sie den Operator (+,-,*,/) ein: ";
cin >> (op);
cout << " Geben Sie die zweite Zahl ein ";
cin >> b;
switch (op)
{
case '+':
{
erg = a+b;
cout << "Das Ergebnis lautet: " << erg ;
break;
}
case '-':
{
erg = a-b;
cout << " Das Ergebnis lautet: " << erg;
break;
}
case '*':
{
erg = a*b;
cout << " Das Ergebnis lautet: " << erg;
break;
}
case '/':
{
erg = a/b;
cout << " Das Ergebnis lautet: " << erg;
break;
}
default:
{
cout << " Falscher Operator "; //sonst
}
} //end of Switch
getch();
}
Alles anzeigen
-close-
Aufgabe:
Entwickeln Sie eine Konsolenanwendung "Taschenrechner", welche nach Eingabe einer ersten Zahl a, des Rechenzeichens (+,-,* oder /) und einer zweiten Zahl b das Ergebnis oder ggf. eine Fehlermeldung ausgibt.
Hier mein Quelltext:
int main()
{
cout << " Geben Sie die erste Zahl ein: ";
double a,b,erg;
int op;
cin >> a;
cout << " Geben Sie den Operator (+,-,*,/) ein: ";
cin >> (op);
cout << " Geben Sie die zweite Zahl ein ";
cin >> b;
switch (op)
{
case '+':
{
erg = a+b;
cout << "Das Ergebnis lautet: " << erg ;
break;
}
case '-':
{
erg = a-b;
cout << " Das Ergebnis lautet: " << erg;
break;
}
case '*':
{
erg = a*b;
cout << " Das Ergebnis lautet: " << erg;
break;
}
case '/':
{
break;
}
default:
{
cout << " Falscher Operator "; //sonst
}
} //end of Switch
getch();
}
Alles anzeigen
folgendes Problem: Nach der Eingabe der ersten Zahl und dem Operator (+,-,*,/) erscheint gleichzeitig:
Geben sie die zweite Zahl ein Falscher Operator
Könnte mir jemand sagen warum das so ist?