C :: Aufgabe #22 :: Lösung #2
2 Lösungen
#22
Programmier-Basic: Eigene Klasse Rechnen schreiben
Anfänger - C
von Coco
- 02.01.2013 um 16:58 Uhr
Schreibe eine eigene Klasse, die für dich das Rechnen übernimmt:
-Funktionen für Addition, Multiplikation, Subtraktion, Division
-Achte darauf, dass Bei der Divison nicht durch 0 geteilt werden darf!
-Die Funktionen sollten Float Werte entgegen nehmen, damit du auch Kommerzahlen berechnen kannst
Im eingentlichen Programm sollst du dann mit z.B. mit einer
Eine bespiel in der Konsole:
gruß
coco
-Funktionen für Addition, Multiplikation, Subtraktion, Division
-Achte darauf, dass Bei der Divison nicht durch 0 geteilt werden darf!
-Die Funktionen sollten Float Werte entgegen nehmen, damit du auch Kommerzahlen berechnen kannst
Im eingentlichen Programm sollst du dann mit z.B. mit einer
switch abfrage die Eingabe verwalten und zu den Richtigen funktionen schicken.Eine bespiel in der Konsole:
Konsolenausgabe:
Erste Zahl: 1.215
Operator: /
Zweite Zahl: 1.124
Ergebnis: 1.08096
Drücken Sie eine beliebige Taste...
gruß
coco
#2
von kathleenw (3600 Punkte)
- 08.07.2020 um 10:05 Uhr
#include <stdio.h>
#include <stdlib.h>
float addieren(float a, float b)
{
return a+b;
}
float subtrahieren(float a, float b)
{
return a-b;
}
float multiplizieren(float a, float b)
{
return a*b;
}
float dividieren(float a, float b)
{
return a/b;
}
int main(void)
{
float a,b,ergebnis;
char operator[2];
printf("1. Zahl : ");
if(scanf("%f", &a)!=1) {
printf("Fehler bitte eine Zahl eingeben. \n");
return EXIT_FAILURE;
}
fflush(stdin);
printf("Operator: ");
fgets(operator,2,stdin);
printf("2. Zahl : ");
if(scanf("%f", &b)!=1) {
printf("Fehler bitte eine Zahl eingeben. \n");
return EXIT_FAILURE;
}
fflush(stdin);
if(operator[0]=='/' && b==0)
{
printf("Division ist nicht möglich.\n");
return EXIT_FAILURE;
}
switch(operator[0]) {
case '+': ergebnis = addieren(a,b); break;
case '-': ergebnis = subtrahieren(a,b); break;
case '/': ergebnis = dividieren(a,b); break;
case '*': ergebnis = multiplizieren(a,b);break;
default : printf("Es wurde ein falscher Operator eingegeben.\n");break;
}
printf("\nErgebnis: %f\n\n", ergebnis);
}
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
