468,457 Members | 1,628 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 468,457 developers. It's quick & easy.

Reverse a number

Que- If a five digit number is input through the keyboard, write a program to reverse the number.

Expand|Select|Wrap|Line Numbers
  1. void main()
  2. {
  3.    int num=12345, res=0, rem;
  4.    clrscr();
  5.    while(num > 0)
  6.    {
  7.       rem=num% 10;
  8.       res=res* 10 + rem;
  9.       num=num/10;
  10.    }
  11.    printf("Reverse of a number=%d",res);
  12.    getch();
  13. }
According to me logic is rite, but the result coming out to be is not correct... Check it our,,, & reply
Mar 19 '08 #1
10 4038
Sick0Fant
121 100+
Que- If a five digit number is input through the keyboard, write a program to reverse the number.

void main()
{
int num=12345, res=0, rem;
clrscr();
while(num > 0)
{
rem=num% 10;
res=res* 10 + rem;
num=num/10;
}
printf("Reverse of a number=%d",res);
getch();
}

According to me logic is rite, but the result coming out to be is not correct... Check it our,,, & reply
It should (and does) work.
Mar 19 '08 #2
If we enter the number upto four digit,answer is rite, Suppose I enter 1234 Answer is 4321.
But If we enter five digit numb,suppose 12345, Answer is not coming 54321.
If we declare num as long, even then the o/p is not coming out to be correct for 5 digit number.
Mar 20 '08 #3
Sick0Fant
121 100+
Far be it from me to doubt you, but I copied and pasted your code into an editor and compiled it, and it produced the desired output.
Mar 20 '08 #4
Ok thx, but i face still d same probs.
Mar 20 '08 #5
Ganon11
3,652 Expert 2GB
Exactly what output are you getting?

e.g. You enter 12345.

What is output?
Mar 20 '08 #6
When I enter 12345, answer is -11215.
When I enter the numb upto 4 digit, answer is coming correct.
Mar 21 '08 #7
JosAH
11,448 Expert 8TB
When I enter 12345, answer is -11215.
When I enter the numb upto 4 digit, answer is coming correct.
The ints on your system are two bytes wide so they can only store numbers in
the range [-2^15,2^15-1], e.g. the number 54321 - 2^15 == -11215, so your
algorithm is correct, the ints are just to narrow (try four byte longs).

kind regards,

Jos
Mar 21 '08 #8
then wat to do to get the correct answer of Five digit number,,,,,,,Even if I declare the numb as long datatype.........even then the answer is not coming out to be correct
Mar 21 '08 #9
JosAH
11,448 Expert 8TB
then wat to do to get the correct answer of Five digit number,,,,,,,Even if I declare the numb as long datatype.........even then the answer is not coming out to be correct
Make all your variable long ints and print them as such: %ld instead of %d.

kind regards,

Jos
Mar 21 '08 #10
Dear Sonia.;
ur code is absolutely correct. firstly check ur compiler size n gv 3/4 digit num.
as it is working in my sys. i.e visual studio..
ck it out n info.

Regards
Vicky...
Mar 25 '08 #11

Post your reply

Sign in to post your reply or Sign up for a free account.

Similar topics

13 posts views Thread by Brad Tilley | last post: by
10 posts views Thread by aatish19 | last post: by
reply views Thread by NPC403 | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.