Conversor em C

Delgado o Gordo

Power Member
Boas. Iniciei-me há pouco tempo em c e queria pedir-vos ajuda para melhorar um pequeno programa que estou a fazer. Este programa é um conversor de temperaturas, que converte Kelvin, Célcius e Fahrenheit.
Código:
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int a, b, c;
  float d;
  printf("Conversor1.1\n\nEste programa converte graus Celcius/Fahrenheit/Kelvin\n\nCarregue no numero correspondente a opcao e prima ENTER\n\n1- Temperatura\n\n0- Sair\n");
  scanf("%d", &a);
  while (a > 1)
  {
     printf("\nNao existe essa opcao!\n\nCarregue no numero correspondente a opcao e prima ENTER\n\n1- Temperatura\n");
     scanf("%d", &a);
  }
  if (a == 0)
  {    
        return 0;
  }
  else
  {
      printf("\nEscolha a escala que quer converter:\n\n1- Celsius\n2- Fahrenheit\n3- Kelvin\n");
      scanf("%d", &b);
      /*Graus Celcius*/
      while (b > 3)
      {
            printf("\nNao existe essa opcao!");
            printf("\nEscolha a escala que quer converter:\n\n1- Celsius\n2- Fahrenheit\n3- Kelvin\n");
            scanf("%d", &b);      
      }
      if (b == 1)
      {
            printf("\nEscolha a escala para que quer converter:\n\n1- Fahrenheit\n2- Kelvin\n");
            scanf("%d", &c);
            while (c > 2)
            {
                  printf("\nNao existe essa opcao!");
                  printf("\nEscolha a escala para que quer converter:\n\n1- Fahrenheit\n2- Kelvin\n");
                  scanf("%d", &c);
            }
            if (c == 1)
            {
                  printf("\nIntroduza os graus Celcius:");
                  scanf("%f", &d);
                  while (d < -273.15)
                  {
                        printf("\nNao existe essa temperatura\n");
                        printf("\nIntroduza os graus Celcius:");
                        scanf("%f", &d);
                  }
            }   
            if (d >= -273.15)
                  printf("\n%4.2f graus Celsius equivalem a %4.2f graus Fahrenheit\n", d, d*1.8+32);
            }
      }
system("PAUSE");    
  return 0;
}
Isto é apenas um excerto do programa e queria adicionar algumas coisas. Queria que em todos os "menus" houvesse uma opção para voltar para trás e para sair directamente do programa. Já resolvi a segunda mas não consigo fazer uma opção para voltar para trás:confused:. Por exemplo, imaginemos que me engano e escolho converter Kelvin em vez de Fahrenheit, queria que o programa desse a a oportunidade de voltar para tráz.Alguma sugestão?

Já agora há possibilidade de adicionar cor ao texto do programa (quando está a correr e não no código), para se tornar mais legível?

Desde já obrigado,
Delgado, o Gordo
 
Última edição pelo moderador:
Back
Topo