Fraction AddFractions(const Fraction& frac1, const Fraction& frac2)
{
Fraction frac3;
if (frac1.denom == frac2.denom)
{
frac3.num = frac1.num + frac2.num;
frac3.denom = frac1.denom;
}
else
{
frac3.denom = (frac1.denom * frac2.denom);
frac3.num = (frac1.num * frac2.denom) + (frac2.num * frac1.denom);
}
return frac3;
}
Ceci est mon prototype et il est une structure définie comme Fraction
avec int num
et int denom
quand je l'appelle la fonction qu'il me donne juste retour des ordures? Je ne sais pas ce qui ne va pas. S'il vous plaît aider. = (Les structures ne fonctionnent pas correctement?
cout << "Please enter two Fractions" << endl;
cout << endl;
GetFraction(frac1);
cout << "Your fisrt fraction is: ";
PrintFraction(frac1);
cout << endl;
cout << endl;
GetFraction(frac2);
cout << "Your second fraction is: ";
PrintFraction(frac2);
cout << endl;
do
{
choice1 = MathMenu();
if (choice1 == ErrorOpt)
{
cout << "There was an error with what you have entered" << endl;
}
else if(choice1 != QuitOpt)
{
// do the math options
switch (choice1)
{
case AddOpt:
AddFractions(frac1, frac2);
break;
case SubtractOpt:
SubtractFractions(frac1, frac2);
break;
case MultiplyOpt:
MultiplyFractions(frac1, frac2);
break;
case DivideOpt:
DivideFractions(frac1, frac2);
break;
}
//print the results
PrintFraction(frac1);
PrintMathOption(choice1);
PrintFraction(frac2);
cout << " = ";
Standardize(frac3);
Reduce(frac3);
PrintFraction(frac3);
cout << endl;
Pause();
Mes pouvoirs psychiques me disent que vous avez variable de pile ninitialized ou quelque chose le long de ces lignes. Pouvez-vous poster le code où vous définissez vos deux fractions et appelez cette fonction? –
La fonction de langage de programmation X est cassée! Non, ce n'est probablement pas le cas. –
Avez-vous un copieur et un opérateur d'affectation définis? Comment appelez-vous AddFractions (...)? Pouvons-nous voir le code? –