Operaciones con racionales

Sergio Rabinal Carreras

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

struct racional
{
int a,b;
};
typedef struct racional Racional;

Racional sumar(Racional x, Racional y);
Racional multiplicar(Racional x, Racional y);
Racional dividir(Racional x, Racional y);
Racional leer_racional(void);
void escribir_racional(Racional z);

int main()
{
Racional x;
Racional y;

printf(“\t\t OPERACIONES CON DOS RACIONALES \n”);
x=leer_racional();
y=leer_racional();

printf(“\t\t SUMA DE DOS RACIONALES\n”);
escribir_racional((sumar(x,y)));
system(“PAUSE”);
printf(“\n\n”);

printf(“\t\t MULTIPLICACION DE DOS RACIONALES\n”);
escribir_racional((multiplicar(x,y)));
system(“PAUSE”);
printf(“\n\n”);

printf(“\t\t DIVISION DE DOS RACIONALES \n”);
escribir_racional((dividir(x,y)));
system(“PAUSE”);
printf(“\n\n”);

return 0;
}

Racional leer_racional(void)
{
Racional z;
printf(“Dame el numerador:\n”);
scanf(“%d”, &z.a);
printf(“Dame el denominador (distinto de 0):\n”);
scanf(“%d”, &z.b);
return z;
}

void escribir_racional(Racional z)
{
printf(“El numero racional obtenido es:\t%d / %d \n”, z.a, z.b);
}

Racional sumar(Racional x, Racional y)
{
Racional z;
z.a=(x.a*y.b)+(y.a*x.b);
z.b=x.b*y.b;

return z;
}

Racional multiplicar(Racional x, Racional y)
{
Racional z;
z.a=(x.a*y.a);
z.b=(x.b*y.b);

return z;
}

Racional dividir(Racional x, Racional y)
{
Racional z;
z.a= x.a*y.b;
z.b= x.b*y.a;
return z;
}

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