как сделать что бы пользователь вводил числа, и считалась их сумма c#

То есть пользователь вводит числа(к примеру 1234), а ему выводит сумму (10) Но если вводит буквы что бы писало ошибку, к примеру (Please enter only numbers)


Ответы (1 шт):

Автор решения: SmorcIRL
string str = Console.ReadLine();

int num = 0;

foreach (char c in str)
{
    if (!char.IsDigit(c))
    {
        Console.WriteLine("Please enter only numbers");
        return;
    }

    num += int.Parse(c.ToString());
}

Console.WriteLine(num);

Или так

if (int.TryParse(Console.ReadLine(), out int num))
{
    int sum = 0;
    while (num > 0)
    {
        sum += num % 10;
        num = num / 10;
    }
    Console.WriteLine(sum);
}
else
{
    Console.WriteLine("Please enter only numbers");
}
→ Ссылка