Temperatura
Publicado por Hunz 17/09/2004
[ Hits: 5.858 ]
Homepage: http://tnegri.com/
Um programinha simples que transforma a temperatura de uma medição para outra,
-- ºC, ºF e Kelvin --
Abraços,
Fiquem com Deus.
/****************************\
| șC <-> șF <-> KELVIN |
|****************************|
| Contribuiçăo para |
| www.VivaOLinux.com.br |
| hunz ~ tn_negri@hotmai.com |
\****************************/
#include <stdio.h>
#include <stdlib.h>
#define LIMPARTELA "clear" /* "clear" para Linux | "cls" para Windows */
#define MENUINICIAL 1
#define MENUDECPARA 2
#define MENUDEFPARA 3
#define MENUDEKELVINPARA 4
void showmenu(int menu)
{
switch (menu) {
case MENUINICIAL: {
printf("\tTemperaturas\n\n");
printf("(1)\tDe șC para..\n");
printf("(2)\tDe șF para..\n");
printf("(3)\tDe Kelvin para..\n");
printf("(0)\tSair.\n");
} break;
case MENUDECPARA: {
printf("\tDe șC para..\n\n");
printf("(1)\tșF\n");
printf("(2)\tKelvin\n");
printf("(0)\tVoltar\n");
} break;
case MENUDEFPARA: {
printf("\tDe șF para..\n\n");
printf("(1)\tșC\n");
printf("(2)\tKelvin\n");
printf("(0)\tVoltar\n");
} break;
case MENUDEKELVINPARA: {
printf("\tDe Kelvin para..\n\n");
printf("(1)\tșC\n");
printf("(2)\tșF\n");
printf("(0)\tVoltar\n");
} break;
}
}
void decparaf()
{
float graus;
system(LIMPARTELA);
printf("Valor em șC: ");
while ((scanf("%f",&graus))==0) {
printf("Invalido\nValor em șC: ");
getchar();
}
graus = graus / 5;
graus = graus * 9;
graus = graus + 32;
printf("Valor em șF: %f",graus);
getchar(); getchar();
}
void decparakelvin()
{
float graus;
system(LIMPARTELA);
printf("Valor em șC: ");
while ((scanf("%f",&graus))==0) {
printf("Invalido\nValor em șC: ");
getchar();
}
graus = graus + 273;
printf("Valor em Kelvin: %f",graus);
getchar(); getchar();
}
void defparac()
{
float graus;
system(LIMPARTELA);
printf("Valor em șF: ");
while ((scanf("%f",&graus))==0) {
printf("Invalido\nValor em șF: ");
getchar();
}
graus = graus - 32;
graus = graus / 9;
graus = graus * 5;
printf("Valor em șC: %f",graus);
getchar(); getchar();
}
void defparakelvin()
{
float graus;
system(LIMPARTELA);
printf("Valor em șF: ");
while ((scanf("%f",&graus))==0) {
printf("Invalido\nValor em șF: ");
getchar();
}
graus = graus - 32;
graus = graus / 9;
graus = graus * 5;
graus = graus + 273;
printf("Valor em Kelvin: %f",graus);
getchar(); getchar();
}
void dekelvinparac()
{
float graus;
system(LIMPARTELA);
printf("Valor em Kelvin: ");
while ((scanf("%f",&graus))==0) {
printf("Invalido\nValor em Kelvin: ");
getchar();
}
graus = graus - 273;
printf("Valor em șC: %f",graus);
getchar(); getchar();
}
void dekelvinparaf()
{
float graus;
system(LIMPARTELA);
printf("Valor em Kelvin: ");
while ((scanf("%f",&graus))==0) {
printf("Invalido\nValor em Kelvin: ");
getchar();
}
graus = graus - 273;
graus = graus / 5;
graus = graus * 9;
graus = graus + 32;
printf("Valor em șF: %f",graus);
getchar(); getchar();
}
int main ( void )
{
int menu=1, menuu;
while (menu!=0) {
system(LIMPARTELA);
showmenu(MENUINICIAL);
printf("[Menu]: ");
while ((scanf("%d",&menu))==0) {
printf("[Opcao Invalida]\n[Menu]: ");
getchar();
}
switch (menu) {
case 1: {
menuu=1;
while (menuu!=0) {
system(LIMPARTELA);
showmenu(MENUDECPARA);
printf("[Menu]: ");
while ((scanf("%d",&menuu))==0) {
printf("[Opcao Invalida]\n[Menu]: ");
getchar();
}
switch (menuu) {
case 1: {
decparaf();
} break;
case 2: {
decparakelvin();
} break;
}
}
} break;
case 2: {
menuu=1;
while (menuu!=0) {
system(LIMPARTELA);
showmenu(MENUDEFPARA);
printf("[Menu]: ");
while (((scanf("%d",&menuu))==0) || (menu<0) || (menu>2)) {
printf("[Opcao Invalida]\n[Menu]: ");
getchar();
}
switch (menuu) {
case 1: {
defparac();
} break;
case 2: {
defparakelvin();
} break;
}
}
} break;
case 3: {
menuu=1;
while (menuu!=0) {
system(LIMPARTELA);
showmenu(MENUDEKELVINPARA);
printf("[Menu]: ");
while (((scanf("%d",&menuu))==0)) {
printf("[Opcao Invalida]\n[Menu]: ");
getchar();
}
switch (menuu) {
case 1: {
dekelvinparac();
} break;
case 2: {
dekelvinparaf();
} break;
}
} break;
}
}
}
}
Rotinas para manipulaçăo de matrizes
Nenhum comentário foi encontrado.
LazyDocker Interface de Usuário em Tempo Real para o Docker
Instalando COSMIC no Linux Mint
Turbinando o Linux Mint: o poder das Nemo Actions
Inteligência Artificial no desenvolvimento de software: quando começar a usar?
O widget do Plasma 6 Área de Notificaçăo
[Resolvido] Algo deu errado ao abrir seu perfil
Problemas com o "startx&... no Slackware (2)
Quando vocês pararam de testar distros? (14)
Problema com som no laptop (3)
Năo estou conseguindo fazer funcionar meu Postfix na versăo 2.4 no Deb... (2)









