Ushort целочислено делене
Здравейте,
Работя над задача 10 от глава 3 "Въведение в програмирането със C#":
- Напишете програма, която приема за вход четирицифрено число във формат abcd (например числото 2011) и след това извършва следните действия върху него:
- Пресмята сбора от цифрите на числото (за нашия пример 2+0+1+1 = 4).
- Разпечатва на конзолата цифрите в обратен ред: dcba (за нашия пример резултатът е 1102).
- Поставя последната цифра, на първо място: dabc (за нашия пример резултатът е 1201).
- Разменя мястото на втората и третата цифра: acbd (за нашия пример резултатът е 2101).
Като цяло задачата ми е ясня. Започнах да я пиша със следния код:
class FourDigitNumber
{
static void Main()
{
System.Console.WriteLine("Please, enter a four digit number: ");
ushort number = ushort.Parse(System.Console.ReadLine());
ushort ones = number%10;
}
}
Извежда ми следната грешка:
Cannot implicitly convert type 'int' to 'ushort'. An explicit conversion exists (are you missing a cast?)
Интересно защо се получава така. В случая не виждам никакво конвертиране. Извършвам целочислено деление на променлива от типа ushort. Като задам int навсякъде, всичко е ОК.
Благодаря предварително!