Ir ao conteúdo
  • Cadastre-se

temperatura celsius e fahrenheit para celsius


Posts recomendados

#include<stdio.h>
#include<string.h>
#include <locale.h>

// questão 1

int main(int argc, char** argv)
{
	setlocale(LC_ALL,"portuguese");
	int resp;
	float tc,tf,t;
 while(resp!=0){
	printf("digite 1 para coverter celsisus para fahrenheit\n");
    printf("digite 2 para coverter fahrenheit para celsius\n");
    scanf("%d",&resp);
	printf("digite a temperatura que deseja converter\n");
    scanf("%f",&t);
    if( resp==1){
    	t=tc;
        tf=(tc*1.8)+32;}

    if(resp==2){
    	t=tf;
        tc=(tf*5)/9 -32;}
    
    switch(resp){
		case 1: printf(" %f em fahrenheit\n",t);
		break;
	    case 2: printf(" %f em celsius\n",tc);
	    break;
	    default: printf("sair\n");
  
	}
		
	}
	
	return 0;
}

esse código era pra funcionar na minha opinião, no entanto, há um erro em ambas as conversões que não consigo solucionar :(

Link para o comentário
Compartilhar em outros sites

 

#include<stdio.h>
#include<string.h>
#include <locale.h>

// questão 1

int main(int argc, char** argv){
     
	setlocale(LC_ALL,"portuguese");
	int resp;
	float tc,tf,t;
     while(resp!=0){
	    printf("digite 1 para coverter celsisus para fahrenheit\n");
         printf("digite 2 para coverter fahrenheit para celsius\n");
         scanf("%d",&resp);
         printf("digite a temperatura que deseja converter\n");
         scanf("%f",&t);
         if( resp == 1){
    	         tc = t;
              tf = (tc*1.8)+32;
         }
         if(resp == 2){
    	         tf = t;
              //tc = (tf*5)/9 -32;
              tc = (tf - 32)/1.8;
              
         }    
         switch(resp){
		   case 1: printf(" %f em fahrenheit\n",tf);
		   break;
	        case 2: printf(" %f em celsius\n",tc);
	        break;
	        default: printf("sair\n");
  
	    }
		
	}
	return 0;
}

 

adicionado 2 minutos depois

Boa noite apenas fiz inversão nas atribuições em: tc = t, tf = t, inclui outra fórmula. Fiz teste e funcionou

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP

@gabrielleletice

Alguns pontos.

 

1 - Você inverteu tc=t e tf=t

A temperatura de origem (tc e tf) vai receber a temperatura digitada (t) e não o contrário

 

2 - A saída da mensagem no case 1, seria tf e não t

case 1: printf(" %f em fahrenheit\n",tf);

 

3 - A fórmula de conversão de ºF para ºC está errada.

 

Obs: Eu não usaria números inteiros (sem decimal) nos cálculos. 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...