Suma de fracciones simplificada

Daniela De Leonardis López

# include<iostream>
# include<stdlib.h>
# include<stdio.h>
using namespace std;

int maxcd(int num,int den);

int main()
{
int n1,d1,n2,d2,y,x,z,nsuma,dsuma;

cout <<“Introduce el numerador de la primera fraccion: “;
cin>> n1;
cout <<“Introduce el denominador de la primera fraccion: “;
cin>>d1;
cout <<“Introduce el numerador de la segunda fraccion: “;
cin>> n2;
cout <<“Introduce el denominador de la primera fraccion: “;
cin>> d2;
cout <<“\n”;

x=maxcd (n1,d1);
n1=n1/x;
d1=d1/x;
y=maxcd(n2,d2);
n2=n2/y;
d2=d2/y;

nsuma= (n1*d2)+(n2*d1);
dsuma= d1*d2;
z=maxcd (nsuma,dsuma);
nsuma=nsuma/z;
dsuma=dsuma/z;

if (dsuma==1)
{
cout<< “La suma de ambas fracciones es: ” << nsuma;
}
else
cout << “La suma de ambas fracciones es: ” << nsuma <<“/”<< dsuma << endl<<endl;

return 0;
}

//FUNCIONES

int maxcd(int num,int den)
{
int mcd;
int *v;
int DIM;
int pe,i,j,cont=0;

pe= int (num/2);
DIM=pe+1;
v=(int*)malloc(DIM*sizeof(int));

for (i=1; i<=pe; i++)
if (num%i==0)
{cont = (cont+1); v[cont]=i;}

cont =cont+1;
v[cont]= num;

for (i=cont; i>=1; i–)
if (den%v[i]==0) break;

mcd=v[i];
return mcd;
}

Anuncios
Esta entrada fue publicada en Informática e Internet. Guarda el enlace permanente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s