나 개발자 진짜 되냐?

[ C# 기본 문법 5 ] 입력 받을때는? READ! 본문

C# 을 맛보았어요!/문법정리를 해보았어요!

[ C# 기본 문법 5 ] 입력 받을때는? READ!

Snow Rabbit 2024. 9. 19. 16:22

 

출력할 땐

Console.WriteLine("");

이었다.

 

그렇다면 입력은 무엇으로 할까!?

 

Console.ReadLine();

커서가 기다리고 있을 것이다.

입력을 받기 위하여!

 

보통 사용 형식은

string input = Console.ReadLine();

 

이렇게 사용한다.

 

사용자에게 입력받은 값을 input이라는 변수에 넣어준다는 의미이다.

 

 

내 입력을 기다리고 있다.

 

여기서는 변수를 name이라고 썼다.

 

여기서 {0}

0번째 있는 값을 가져오겠다.

라는 의미이다.

 

엇..그렇다면 0번째가 아니라

다른 번째도 있다는 건가?!

 

 

자! 한 개가 아니라 여러 개 일 때!

그때는 또 사용해 아하는 메서드가 있다.

 

바로

String.Split

라는 친구이다.

 

사용자로부터 여러 개의 값을 

한 줄에 입력받고 싶을 때에는 

 

Console.ReadLine 메서드를 사용하여 

입력받은 값을 문자열로 받은 후,

 

string.Split 메소드를 사용하여 

문자열을 나누어서 처리할 수 있다.

 

Console.Write("Enter two numbers: ");
string input = Console.ReadLine();    // "10 20"과 같은 문자열을 입력받음

string[] numbers = input.Split(' ');  // 문자열을 공백으로 구분하여 배열로 만듦
int num1 = int.Parse(numbers[0]);     // 첫 번째 값을 정수로 변환하여 저장
int num2 = int.Parse(numbers[1]);     // 두 번째 값을 정수로 변환하여 저장

int sum = num1 + num2;                // 두 수를 더하여 결과를 계산

Console.WriteLine("The sum of {0} and {1} is {2}.", num1, num2, sum);

[출력]
Enter two numbers: 10 20
The sum of 10 and 20 is 30.

 

자 처음줄에 10 20을 문자열을 넣어주면

얘는 "10 20" 이 자체를 받아서

이제 하나 왔다 나머지하나는 어딨냐?라고 묻게 된다

 

그래서 우리는!

 

string [] numbers = input.Split(' ');

 

이 친구를 통해

input 들어온 값

split 나눈다

' '  스페이스 기준으로

[] 배열로 만든다.

 

이렇게 만들어진 배열친구들은

이제 배열 이름으로 불리게 된다.

 

개발자는 0부터 센다!

그래서 두 개면 0,1

다섯 개면 0,1,2,3,4 

이렇게 번호가 붙여지게 된다.

 

 

여기서 진짜 왕 중요한 거!!

 

배열 안에 있는 값은

우리가 Read를 통해 문자열로 받았다.

 

이 문자열을 두 개 받아서 더한다고 치면

이것을 숫자로 우리는 바꿔주어야 한다.

 

하지만 형변환으로 바꿔주는 것이 아니다.

숫자에서 실수

뭐.. 음수에서 양수 

이런 게 아니라

 

숫자처럼 생긴 문자를 숫자로 바꿔주어야지만

사칙이 가능하기 때문에

 

우리는

Parse라는 친구를 통해

진짜 숫자처럼 보이지만 사실은 문자형인 애를

진짜 숫자로 바꾸어 주게 된다.

 

그래서

 

int num1 = int.Parse(numbers [0]);  

0번째 배열친구를 Parse 바꿔줘 int

그 값을

 num1이라는 변수에 넣어줄래! 

 

라고 해석 할 수 있다.

 

 

Console.WriteLine("The sum of {0} and {1} is {2}.", num1num2sum);

 

여기서 {n} 은 포맷 값으로

맨 끝에 친구들 중에 첫 번째 있는 애를 여기에 넣어준다는 뜻이 된다.