febrero 26, 2013

EJEMPLO: CONVERSION GRADOS FARENHEIT


Programa que despliega una tabla de conversión de ºC a ºF y viceversa. El programa debe tener una función que pregunte el tipo de conversión deseada. El usuario tecleará "c" o "C" si la conversión va a ser de ºC a ºF y "f" o "F" si la conversión es de ºF a ºC, regresando el caracter leído por medio de return. Otra función preguntará el rango de valores de la tabla y el incremento, recibiendo como parámetros las direcciones de las variables donde se almacenarán esos datos. Otras dos funciones serán para desplegar cada tipo de tabla de conversión.

#include stdio.h
#include ctype.h

 void despliegaFC(int *ran1,int *ran2,int *inc);
 void despliegaCF(int *ran1,int *ran2,int *inc);
 void leeDatos(int *ran1,int *ran2,int *inc);
 char tipoConv(void);

 void main(void){

  int rango1,rango2,incremento;
  char tipo;
   clrscr();
  tipo=tipoConv();
  leeDatos(&rango1,&rango2,&incremento);

    if(tipo=='C'){
    despliegaCF(&rango1,&rango2,&incremento);
   }
     else{
      despliegaFC(&rango1,&rango2,&incremento);
    }
}
  char tipoConv(void){
   char caract;

   printf("       TABLA DE CONVERSION DE GRADOS CENTIGRADOS A GRADOS FARENHEIT");
   printf("\n             Y DE GRADOS FARENHEIT A GRADOS CENTIGRADOS");
   printf("\n\nPara convertir de Centigrados a Farenheit oprime 'C'");
   printf("\npara convertir de Farenheit a Centigrados oprime 'F'");

    printf("\n\nTipo de Conversion (C o F): ");
    caract=toupper(getch());

     return caract;
 }

    void leeDatos(int *ran1,int *ran2,int *inc){

      printf("\n\nValor inicial de la tabla: ");
      scanf("%d",ran1);
      printf("\nValor final de la tabla: ");
      scanf("%d",ran2);

      printf("\n\nIncremento de los valores de la tabla: ");
       scanf("%d",inc);
   }

      void despliegaCF(int *ran1,int *ran2,int *inc){

       int suma=*ran1,incremento=*inc,rango2=*ran2;
       float conversion;

       while(suma<=rango2){

conversion=(((suma)*9)/5)+32;
printf("\n%d §C   -----------------------------  %.1f §F",suma,conversion);

suma=suma+incremento;
     }
getch();
   }

       void despliegaFC(int *ran1,int *ran2,int *inc){

int suma=*ran1,incremento=*inc,rango2=*ran2;
int conversion;

  while(suma<=rango2){

  conversion=((suma-32)*5)/9;
  printf("\n%d §F   -----------------------------  %d §C",suma,conversion);

  suma=suma+incremento;
     }
   getch();
   }

No hay comentarios:

Publicar un comentario