ascode 1137 변환

1 분 소요

문제 설명

미터법 단위의 값과 영국식 단위의 값을 서로 변환하는 프로그램을 작성하시오.


미터법 단위 : kilogram, liter
영국식 단위 : pound, gallon

두 단위의 관계는 다음과 같다.

무게 단위 : 1.000 kilograms(kg) -> 2.2046 pounds(lb) , 0.4536 kilograms(kg) -> 1.0000 pound(lb)
부피 단위 : 1.0000 liter(l) -> 0.2642 gallons(g) , 3.7854 liters(l) -> 1.0000 gallon(g)

입력 설명

첫 번째 줄에 테스트케이스 T 가 입력된다(1 <= T <= 20).

그 다음 줄 부터 숫자값(double 타입의 실수)과 변환할 단위 기호가 공백 하나를 두고 T 개 만큼 입력된다.

단위 기호는 kg, lb, l, g 로 입력되면 각각 킬로그램, 파운드, 리터, 갤론을 의미한다.
출력 설명 각 테스트케이스에 대하여 입력 데이터 순번, 상대 단위로 변환된 숫자값(소수점 이하 5째 자리에서 반올림하여 4쨰 자리까지만 출력), 단위기호 를 한 줄에 나란히 출력한다(출력 예시 참조).

입력 예시

5 1 kg 2 l 7 lb 3.5 g 0 l

출력 예시

1 2.2046 lb 2 0.5284 g 3 3.1752 kg 4 13.2489 l 5 0.0000 g

코드

#include <stdio.h> 

int main() {
	int a, i;
	double b;
    char arr[3];
	scanf("%d", &a);
	for (i = 1; i <= a; i++)
	{
		scanf("%lf %s", &b, &arr);
		if (arr[0] == 'l' && arr[1] == 'b') {
			printf("%d %.4f kg\n", i, b * 0.4536);
		}
		else if (arr[0] == 'k' && arr[1] == 'g')
		{
			printf("%d %.4f lb\n", i, b * 2.2046);
		}
		else if (arr[0] == 'g')
		{
			printf("%d %.4f l\n", i, b * 3.7854);
		}
		else if (arr[0] == 'l' && arr[1] != 'b')
		{
			printf("%d %.4f g\n", i, b * 0.2642);
		}
	}
	return 0;
}

댓글남기기