Código C:
Ver original#include <stdio.h>
#include <stdlib.h>
//Prototipos de funciones
double sumar(double op1, double op2); //f() = Funcion que suma.
double restar(double op1, double op2); //f() = Funcion que resta.
double multiplicar(double op1, double op2); //f() = Funcion que Multiplica.
double dividir(double op1, double op2); //f() = Funcion que divide.
int main()
{
/**inicializa el arreglo de 4 apuntadores a funciones que toman cada una
dos argumentos double y devuelven void**/
void (*funciones[4])(double, double) = (sumar, restar, multiplicar, dividir);
int seleccion; //Variable para almacenar la seleccion del usuario.
printf("Introduzca un numero entre 0 y 3, 4 para terminar: "); //Procesa la seleccion del usuario.
while(seleccion >= 0 && seleccion <4)
/**invoca la funcion en la ubicacion de la eleccion en el arreglo "funciones",
y pasa la eleccion a otro argumento**/
{
(funciones[seleccion]) (seleccion);
printf( "Introduzca un numero entre 0 y 3, 4 para terminar: "); scanf( "%d", &seleccion
); }//Fin del while.
return 0;//Indica que el programa termino exitosamente.
}//fin del main
double sumar(double op1, double op2)
{
double r;
printf("\n introduzca el primer sumando:"); printf("\n introduzca el segundo sumando:"); r = op1 + op2;
return (r); //así asignamos a la variable Suma, el valor de c=a+b
}
double restar(double op1, double op2)
{
double r;
printf("\n introduzca el primer restando:"); printf("\n introduzca el segundo restando:"); r = (op1-op2);
return (r);
}
double multiplicar(double op1, double op2)
{
double r;
printf("\n introduzca el primer multiplicando:"); printf("\n introduzca el multiplicador:"); r = op1 * op2;
return(r);
}
double dividir(double op1, double op2)
{
double r;
printf("\n introduzca el primer dividendo:"); printf("\n introduzca el segundo dividendo:"); r = op1 / op2;
return (r);
}