Programming Language/C#

[C#] TQC+ 문제 CS_104 :

공구일 2025. 4. 29. 19:28
728x90

🔍C#: CS_104 .

 한 줄에 띄어쓰기를 포함한 두 숫자를 두 번 받아서 두 좌표의 거리를 구하세요.

 

 

1. 문제 정답

(1) 첫 번째 방법 : 

using System;

namespace C104{
    class C104{
        static void Main(string[] args){
            string[] input1 = Console.ReadLine().Trim().Split(' ');
            //double x1 = Convert.ToDouble(input1[0]);
            double.TryParse(input1[0], out double x1);
            double.TryParse(input1[1], out double y1);
            //double x1 = double.Parse(input1[0]);
            //double y1 = double.Parse(input1[1]);

            string[] input2 = Console.ReadLine().Trim().Split(' ');
            double.TryParse(input2[0], out double x2);
            double.TryParse(input2[1], out double y2);
            //double x2 = double.Parse(input2[0]);
            //double y2 = double.Parse(input2[1]);

            double distance = Math.Sqrt(Math.Pow(x2 - x1, 2) + Math.Pow(y2 - y1, 2) );
            Console.WriteLine(distance.ToString("f4"));
            //fixed-point format 4 => 4digits after the dicimal point
        }
    }
}

 

(2) 두 번째 방법 : 함수를 정의해서 사용하기

using System;

namespace C104{
    class C104{
        static void Main(string[] args){
            double x1,y1,x2,y2;
            ReadCoordinats(out x1, out y1);
            ReadCoordinats(out x2, out y2);

            double distance = Math.Sqrt(Math.Pow(x2 - x1, 2) + Math.Pow(y2 - y1, 2) );
            //Console.WriteLine(distance.ToString("f4"));
            Console.WriteLine($"{distance:F4}");
            //fixed-point format 4 => 4digits after the dicimal point
        }
        static void ReadCoordinats(out double x, out double y){
           string[] input = Console.ReadLine().Trim().Split(' ');

            double.TryParse(input[0], out x);
            double.TryParse(input[1], out y);
        }
    }
}

 

 

2. 정리

- Trim() 메서드는 문자열 앞 뒤에 있는 공백, 탭, 개행 문자 등을 삭제하는 역할을 합니다. Split(' ')은 공백을 기준으로 문자열을 자른다는 의미로, 괄호 안에 들어가는 값을 기준으로 문자열이 나뉩니다.

 

- 서식 지정자를 표현하는 방식이 위에서 두가지 소개되고 있습니다. 먼저, 문자열로 변경하며(distance.ToString("f4")) 소수점 4자리 까지 나타내라는 것을 의미해주는 첫 번째 방법과 문자열 보간 방식을 이용하여 $"{distance:F4}" 두 번째 방법이 있습니다.

 

- 문자열 보간이란 문자열 안에 변수나 표현식을 쉽게 넣는 방식으로 예전에는 더하기를 이용하여 변수와 문자열을 합친 방법의 발전된 방식이라고 생각하면 됩니다. -> $""

728x90