1. Not finding help here? Sign up for a free 30min tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Need help with c++ program

  1. Mar 13, 2006 #1
    i've just started studying programming...nd i cant understand how to write these programs:

    1:to recognize palindromes using goto condition
    2:to recognize palindromes using for loop
    3:to convert binary into decimal nd decimal into binary

    i m seriously lost nd cant understand for loop...plzz help
    actually i ve finally done palindrome question by goto method:)
    plzz help me with for loop
    nd tell me how to get output for required binary or decimal no.?doz it use for loop?
     
    Last edited: Mar 13, 2006
  2. jcsd
  3. Mar 13, 2006 #2

    chroot

    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    We're not going to do your homework for you. You can post programs you've attempted, but which don't work, and we can try to help you fix them.

    - Warren
     
  4. Mar 14, 2006 #3
    sorry i wasnt asking you to do it...actually my vc++ has some problem as soon as i run program computer shuts down...i ve made codes can any1 check them

    for 1.
    {
    int a,b,c,d,n,div,div1;
    cout<<"length of no. :";
    cin>>n;
    cout<<"Number :";
    cin>>a;
    flag:
    div=pow(10,n-1);
    div1=pow(10,1);
    b=a/div;
    c=a%div1;
    d=a%div;
    a=d/div1;
    n=n-2;
    if (b!=c)
    cout<<"No. isnt a palindrome"<<endl;
    else if (n==0 || n==1)
    cout<<"No. is palindrome"<<endl;
    else
    goto flag;
    }

    for 2.
    {
    int num,n,x,length,division1,a,b,y;
    cout<<"length :";
    cin>>n;
    cout<<"number :";
    cin>>num;

    for (n=1;n<=length;n++)
    {
    x=num/pow(10,length-n);
    division1=pow(10,n-1);
    a=x%10;
    y=num%division1;
    b=x/pow(10,n-1);

    if (n>length)
    break;

    if (a==b)
    cout<<"no. is a palendrome"<<endl;
    else if (a!=b)

    cout<<"no. is not a palendrome"<<endl;

    }
    nd i m working on 3rd
     
  5. Mar 14, 2006 #4
    what is the use of the pow() function please specify

    another method just find reverse of a no and compare it to the orignal no
     
  6. Mar 14, 2006 #5
    actually i need to apply only pow(a,b){it is a power function meaning a^b}
    nd for loop nd goto conditions
    pow(a,b) requires source file math.h
    i ve done somethings for 3rd but cant check output
    plz some1 do

    {
    int n,a,s,m,i;
    cout<<"length of no.";
    cin>>n;
    cout<<"number";
    cin>>a;

    s=8*n-1;
    m=1<<s;

    cout<< setw( 10 )<<a<<"=";
    for (i=1;i<=s+1;i++)
    {
    cout<<(a & m ? "1" : "0" );
    a<<=1;
    if (a%8==0)
    cout<<" ";
    }
    cout<<endl;
    }
     
  7. Mar 15, 2006 #6
    Well, I'm not too familiar with several of the functions you used in the third problem (setw(n), <<=, etc.) but for binary to decimal conversion, a rough algoithm might consist of passing each digit in the input to an array of a size equal to the length of the input, then multiplying each element by 2^n (where n represents the placement of the digit, i.e. n=0 for least significant digit, etc.), and then adding the multiplied value if the digit to the output.
     
  8. Mar 16, 2006 #7
    but i vent done arrays till now....can we do it by loop?
     
  9. Mar 16, 2006 #8
    As a FYI you can use a code tag so that your code is easier to read

    Code (Text):
    .....[slash code]

    [code]
     {
    int n,a,s,m,i;
    cout<<"length of no.";
    cin>>n;
    cout<<"number";
    cin>>a;

    s=8*n-1;
    m=1<<s;

    cout<< setw( 10 )<<a<<"=";
    for (i=1;i<=s+1;i++)
    {
    cout<<(a & m ? "1" : "0" );
    a<<=1;
    if (a%8==0)
    cout<<" ";
    }
    cout<<endl;
    }
     
     
  10. Mar 18, 2006 #9
    how about finding reverse of a no by this logic and comparing it to the orignal one
    int sum,a,b;
    sum=0;
    cin>>a;
    b=a;
    while(a!=0)
    {
    sum=(sum*10)+(a%10);
    a=a/10;
    }
    if(sum==b)
    cout<<"palindrome";
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?