알고리즘 하샤드 수 구하기

김치헌·2024년 1월 24일
0

TIL

목록 보기
21/38

숫자를 Char 배열에 저장한 후 각 인덱스를 더하고 입력받은 x를 나누어 나머지를 구하면 쉽게 해결 할 수 있을 것이라고 생각했다.

문제는 char자료형을 int로 어떻게 바꾸어 줄 것인가였다.
알고 있는 int.parse는 string에서만 사용할 수 있어서 char의 자료형을 string으로 바꾼 후 다시 int로 바꾸어 주어야 했다. 다른 방법이 있을 것 같아 char를 int로 변환하는 법에 대하여 알아 보았다.

  1. GetNumericValue사용하기
using System; 
public class Example
{
    public static void Main()
    {
        char ch = '9';
        int intVal = (int)Char.GetNumericValue(ch); 
        Console.WriteLine(intVal);
    }
}
  1. '0'과 숫자차이를 이용하기
using System; 
public class Example
{
    public static void Main()
    {
        char ch = '9';
        int intVal = ch - '0'; 
        Console.WriteLine(intVal);
    }
}
  1. 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);
    }
}
profile
초보개발자

0개의 댓글