title image


Smiley Programm zum Multiplizieren und Addieren von Brüchen?!
Hallo habe folgendes Problem.



ich habe ein Programm.

Die Operationen Dividiere, Multipliziere sowie Addiere (rationaler Zahlen) sowie eine Eingabe und Ausgabefunktion sind zu erstellen.



Zu beachten ist,

- dass der Nenner einer rationalen Zahl nicht 0 sein darf.

- Es wird erwartet, dass die Zahlen teilerfremd berechnet (und ausgegeben) werden. Eine Funktion aus dem letzten Semester ist hierfür geeignet.

- Erstellen Sie ggfs. weitere (Hilfs-)Funktionen.



Ich habe bisher folgendes, dabei fehlen mir aber noch die Funktionen, die eigenbtlich Kern des ganzen sind. Vielleicht kann mir jemand helfen:





#include



struct bruch { // rationale Zahl als teilerfremder Bruch

int nenner;

int zaehler;

};



typedef struct bruch r_zahl;

/*******************************************************/

void AusgabeRationaleZahl(r_zahl bruch) {



printf("\nBDas Ergebnis lautet: %d",&bruch);







}

/*******************************************************/

int EingabeRationaleZahl(r_zahl *bruch) {



r_zahl x, y;



printf("\nBitte geben Sie den Zaehler ein:");

scanf("%d", &x);

printf("\nBitte geben Sie den Nenner ein:");

scanf("%d", &y);





return 0;

}



int ggt(int a, int b)

{

while (a!=b)

{

if (a>b)

a=a-b;

else

b=b-a;

}

return (a);

}



/*******************************************************/

r_zahl Multipliziere(r_zahl br1, r_zahl br2) {









}

/*******************************************************/

r_zahl Addiere(r_zahl br1, r_zahl br2) {

}

/*******************************************************/

r_zahl Dividiere(r_zahl br1, r_zahl br2) {

}

/*******************************************************/



void kuerze (r_zahl *br) {

int ggt_nz; //größte gemeinsame Teiler

do

{

ggt_nz=ggt(br->zaehler, br->nenner);

br->nenner/=ggt_nz;

br->zaehler/=ggt_nz;

}while(ggt_nz!=1);

}

/*******************************************************/

int main(void) {

// Lokale Variablen

r_zahl bruch1;

r_zahl bruch2;

r_zahl br_erg;



void kuerze (r_zahl *br);

while (EingabeRationaleZahl(&bruch1)!= 0);

while (EingabeRationaleZahl(&bruch2)!= 0);



AusgabeRationaleZahl(bruch1);

AusgabeRationaleZahl(bruch2);



br_erg = Multipliziere(bruch1, bruch2);

printf("Multiplikation: ");

AusgabeRationaleZahl(br_erg);



br_erg = Addiere(bruch1, bruch2);

printf("Addition: ");

AusgabeRationaleZahl(br_erg);



br_erg = Dividiere(bruch1, bruch2);

printf("Division: ");

AusgabeRationaleZahl(br_erg);



return(0);

}









geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: