
Conversor Euros-Pesetas en C
C/Visual C
Publicado el 15 de Febrero del 2002 por Lucía Acuña Rey (5 códigos)
13.587 visualizaciones desde el 15 de Febrero del 2002
Conversor de Euros a pesetas y viceversa. Incluye la función de redondear.
/* Lucia Acuña Rey */
/* Conversor de Euros - Ptas */
#include<stdio.h>
#include<conio.h>
#include<math.h>
float redondea(float valor,int decimales)
{
int factor=ceil(pow(10,decimales));
/* -- es necesario el ceil porque la ----- */
/* -- conversi¢n a int pierde información -- */
/* - p.e con decimales=2 factor saldr¡a 99 - */
float fraccion;
valor=valor*factor;
fraccion=valor-floor(valor);
if (fraccion>=0.5)
{
valor=ceil(valor);
}else{
valor=floor(valor);
}
return(valor/factor);
}
main()
{
float euros;
float euros2;
int pts;
int pts2;
char tecla;
/* Variable reservada para la opcion que elija el usuario */
clrscr();
printf("\n ===============================");
printf("\n == ==");
printf("\n == Conversor de Euros & Ptas ==");
printf("\n == ==");
printf("\n ===============================");
printf("\n");
printf("\n * Para pasar de Ptas a Euros pulsa 1");
printf("\n");
printf("\n * Para pasar de Euros a Ptas pulsa 2");
printf("\n");
printf("\n * Para salir del programa pulsa 3");
printf("\n");
printf("\n Elija una opcion: ");
do
{
scanf("%d",&tecla);
/* Si introduce un 1 pedira las ptas */
/* ----- y las pasara a euros ------ */
if (tecla==1)
{
printf("\n");
printf("\n Introduce las Ptas: ");
scanf("%i",&pts);
euros = pts/166.386;
euros2=redondea(euros,2);
textcolor(GREEN);
printf("\n %8.0i Ptas =",pts);
cprintf(" %8.2f euros",euros2);
printf("\n");
printf("\n Elija una nueva opcion: ");
}
/* Si introduce un 2 pedira los euros - */
/* ----- y las pasara a ptas ---------- */
if (tecla==2)
{
printf("\n");
printf("\n Introduce los Euros: ");
scanf("%f",&euros);
pts = euros*166.386;
pts2 =redondea(pts,0);
textcolor(GREEN);
printf("\n %8.2f Euros =",euros);
cprintf(" %8.0i Ptas",pts);
printf("\n");
printf("\n Elija una nueva opcion: ");
}
if (tecla==3)
{
printf("\n");
printf("\n Pulse ENTER para terminar...");
}
}
/* -- fin do -- */
while (tecla!=3);/* Repite el bucle mientras sea distinto de 3 */
getch();
}