2017-07-20 2 views
0

J'ai de grands entiers négatifs que je veux inverser avec leurs signes par exemple supposons que j'ai -654321 je veux la sortie comme -123456. j'ai le code d'écriture qui inverse le nombre positif quand je donne une valeur négative, il donne 0.comment inverser le numéro avec la retenue des signes il en C#

mon code:

int Number = int.Parse(Console.ReadLine()); 
     int Reverse = 0; 
     while (Number > 0) 
     { 
      int remainder = Number % 10; 
      Reverse = (Reverse * 10) + remainder; 
      Number = Number/10; 
     } 
    Console.WriteLine("Reverse No. is {0}", Reverse); 
     Console.ReadLine(); 

ce ne convertit que nombre positif non négatif je veux aussi conserver leurs signes.

Répondre

0
int OriginalNumber = int.Parse(Console.ReadLine()); 
int Number = OriginalNumber; 
if(OriginalNumber < 0) 
{ 
    Number = Math.Abs(Number); 
} 

    int Reverse = 0; 
    while (Number > 0) 
    { 
     int remainder = Number % 10; 
     Reverse = (Reverse * 10) + remainder; 
     Number = Number/10; 
    } 
    if(OriginalNumber < 0) 
    { 
     Reverse = (Reverse * -1); 
    } 
    Console.WriteLine("Reverse No. is {0}", Reverse); 
    Console.ReadLine();