Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories

Welcome to the new platform of Programmer's Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use its exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.

counting input characters -- help request

wassupwassup earthPosts: 0Member

Hi,

below program count input letters and numbers, but few things are not going as i planned:

  1. when input like: 33 - it display twice comment instead last count

33
    Chars: 
    Letters: 0
    Numbers: 5
    Chars: 
    Letters: 0
    Numbers: 6
  1. i would like to stop it when last char is repeated 3 times.

can you help please?

` cout<<"Input letters or numbers.\n"; char zn;

int count_l=0, count_c=0;

while(cin>>zn)
{

    if((zn<=122 && zn>=97) || (zn<=90 && zn>=65))
    {
        ++count_l;

        if(count_l=='3')
        {
            cout<<"Chars: \nLetters: "<<count_l<<endl;
        }
    }
    if(zn<=57 && zn>=48)
    {
        ++count_c;
    }
    cout<<"Chars: \nLetters: "<<count_l<<"\nNumbers: "<<count_c<<endl;
}

return 0; }

`

Comments

  • pseudocoderpseudocoder Posts: 686Member ✭✭✭

    The odds of count_l being '3' are probably not that high since you've initialized it to zero. It would take 51 characters to satisfy the test condition of count_l == '3'

    I'd try cin.get and use the new line char to display your output of digits and / or characters.

    while(cz = cin.get())
    {
        if(cz >= '0' && cz <= '9')
            ++count_c;
        // letters check
        if(cz == '\n')
        {
            // output digits and / or character count
            // reset count_c and count_l to 0
            // if wanted, check some other var for being '3'
            // or use break; statement here to exit while loop
        }
    }</pre>
    
Sign In or Register to comment.