Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

C언어 함수로 온도 변환 테이블 만드는 방법 완벽 가이드

온도 변환이란 화씨(Fahrenheit) 온도를 섭씨(Celsius)로 바꾸거나, 그 반대로 섭씨 온도를 화씨 온도로 변환하는 것을 말합니다.

이번 글에서는 C언어의 함수를 활용하여 화씨 온도를 섭씨 온도로 변환하고, 그 결과를 표(테이블) 형태로 출력하는 방법을 단계별로 설명합니다.

온도 변환 공식

화씨를 섭씨로 변환할 때 사용하는 기본 공식은 다음과 같습니다.

섭씨(°C) = (화씨(°F) - 32) × 5 / 9

이 공식을 별도의 함수로 분리하면 코드의 재사용성과 가독성이 크게 향상됩니다.

C언어 예제 코드

다음은 함수를 사용하여 화씨 → 섭씨 온도 변환 테이블을 출력하는 C 프로그램입니다.

#include<stdio.h>
float conversion(float);
int main(){
    float fh,cl;
    int begin=0,stop=300;
    printf("Fahrenheit \t Celsius\n");// 변환 테이블 제목 출력
    printf("----------\t-----------\n");
    fh=begin;
    while(fh<=stop){
        cl=conversion(fh); // 함수 호출
        printf("%3.0f\t\t%6.lf\n",fh,cl);
        fh=fh+20;
    }
    return 0;
}
float conversion(float fh) // 호출되는 함수{
    float cl;
    cl= (fh - 32) * 5 / 9;
    return cl;
}

코드 동작 원리

1. main 함수: 시작 온도(0°F)부터 종료 온도(300°F)까지 while 반복문을 통해 20°F씩 증가시키며 각 온도에 대해 변환 함수를 호출합니다.

2. conversion 함수: 매개변수로 받은 화씨 온도에 변환 공식 (fh - 32) * 5 / 9를 적용한 후, 계산된 섭씨 온도를 반환합니다.

3. 서식 지정자: %3.0f%6.lf를 사용해 열을 정렬함으로써 깔끔한 표 형태의 출력을 만듭니다.

실행 결과

위 프로그램을 실행하면 다음과 같은 온도 변환 테이블이 출력됩니다.

Fahrenheit  Celsius
---------- -----------
   0           -18
   20           -7
   40            4
   60           16
   80           27
   100          38
   120          49
   140          60
   160          71
   180          82
   200          93
   220         104
   240         116
   260         127
   280         138
   300         149

응용: 섭씨에서 화씨로 변환하기

같은 방식으로 반대 방향의 변환 프로그램도 쉽게 작성할 수 있습니다. conversion 함수 내부의 수식만 아래 공식으로 변경하면 됩니다.

화씨(°F) = (섭씨(°C) × 9 / 5) + 32

이처럼 온도 변환 로직을 하나의 함수로 모듈화하면, 변환 방향을 바꾸거나 온도 범위·간격을 조정하는 것이 매우 간단해집니다. 함수형 프로그래밍 구조의 장점을 활용해 다양한 단위 변환 프로그램에 응용해 보시기 바랍니다.