숫자를 Char 배열에 저장한 후 각 인덱스를 더하고 입력받은 x를 나누어 나머지를 구하면 쉽게 해결 할 수 있을 것이라고 생각했다.
문제는 char자료형을 int로 어떻게 바꾸어 줄 것인가였다.
알고 있는 int.parse는 string에서만 사용할 수 있어서 char의 자료형을 string으로 바꾼 후 다시 int로 바꾸어 주어야 했다. 다른 방법이 있을 것 같아 char를 int로 변환하는 법에 대하여 알아 보았다.
- GetNumericValue사용하기
using System; public class Example { public static void Main() { char ch = '9'; int intVal = (int)Char.GetNumericValue(ch); Console.WriteLine(intVal); } }
- '0'과 숫자차이를 이용하기
using System; public class Example { public static void Main() { char ch = '9'; int intVal = ch - '0'; Console.WriteLine(intVal); } }
- CharUnicodeInfo.GetDecimalDigitValue() 사용하기
using System; using System.Globalization; public class Example { public static void Main() { char ch = '9'; int intVal = CharUnicodeInfo.GetDecimalDigitValue(ch); Console.WriteLine(intVal); } }