본문 바로가기
Study (etc)/C

[C언어] 섭씨/화씨 변환 프로그램

by Haren 2019. 3. 27.

갑자기 구현해보고 싶다는 생각이 들어서 만들게 된 섭씨/화씨 변환 프로그램이다.

 

섭씨는 어는점 0℃, 끓는점 100℃로, 100등분하여 온도를 나타내며, 대부분 이 단위를 사용한다.

화씨는 어는점 32℉, 끓는점 212℃로 180등분하여 온도를 나타내며, 미국에서 주로 이 단위를 사용한다.

 

두 단위 사이에는 다음과 같은 공식이 성립한다.

-섭씨 → 화씨 : °F = °C × 1.8 + 32

-화씨 → 섭씨 : °C = (°F − 32) / 1.8

 

이 프로그램을 구현할 때 아래와 같은 것들을 고려하였다.

1. 사용자로부터 변환할 단위를 선택할 수 있도록 한다.

2. 각 온도 변환 기능을 함수로 구현한다.

 

아래는 구현한 소스코드.

 

소스코드

#include <stdio.h>

//화씨 - 섭씨

void CelToFah(float temp) //섭씨에서 화씨로
{
    float result;
    printf("온도 입력 (섭씨) : ");
    scanf("%f",&temp);
    result = (temp*1.8)+32;
    printf("섭씨 -> 화씨 : %.2f ℉\n",result);
}

void FahToCel(float temp) //화씨에서 섭씨로
{
    float result;
    printf("온도 입력 (화씨) : ");
    scanf("%f",&temp);
    result = (temp-32)/1.8;
    printf("화씨 -> 섭씨 : %.2f ℃\n",result);
}

int main()
{
    int sel;
    float temp=0;
    
    printf("변환 선택 : 1. 섭씨 -> 화씨 // 2. 화씨-> 섭씨 : ");
    scanf("%d",&sel);
    
    if(sel==1) //화씨->섭씨 or 섭씨 -> 화씨?
        CelToFah(temp);
    else if(sel==2)
        FahToCel(temp);
    else
    {
        printf("잘못된 입력\n");
    }
    
    return 0;
    
}

 

실행 결과

이상 없이 잘 돌아간다. 반대의 경우는 첨부하지 않겠다. 잘 작동하기 때문