[Homework] C# Basics - Operators-Expressions-and-Statements - Problem{6} - Four-Digit Number
Здравейте!
Успях да напиша програмта и всичко работи докато не въведа 1000 (или друго число с 0 на края). Ето го и кода ми:
using System;
class FourDigitNumber
{
static void Main()
{
int Num = int.Parse(Console.ReadLine());
if (Num < 10000 && Num > 999)
{
int a = Num / 1000;
int b = (Num / 100) % 10;
int c = (Num / 10) % 10;
int d = Num % 10;
Console.WriteLine("Sum of digits: {0}", a+b+c+d);
Console.WriteLine("Reversed order: {0}", d * 1000 + c * 100 + b * 10 + a);
Console.WriteLine("Last digit in front: {0}", d * 1000 + a * 100 + b * 10 + c);
Console.WriteLine("Second and third digits exchanged: {0}", a * 1000 + c * 100 + b * 10 + d);
}
else
Console.WriteLine("The number should be exactly 4 digits and cannot start with '0'");
}
}
Идеята е, че когато нулата застане най-отпред тя не се изписва в конзолата.
Имате ли решение на този сълюшън и бихте ли споделили?
Поздрави!
Правилно е, но нали домашното е относно оператори и изрази, не масиви.
Ето без масив... въпреки , че според мен няма значение какво си приложил за да решиш дадена задача, освен ако в условието не е изрично упоменато. Надявам се да съм бил полезен. Поздрави.
Ще можеш ли да обясниш следния код:
Console.Write("Enter number: ");
int a = Console.Read() - '0';
int b = Console.Read() - '0';
int c = Console.Read() - '0';
int d = Console.Read() - '0';
Не разбирам за какво е тирето и нулата в кавички след него.