Algoritm pentru determinarea numărului de apariții a unui caracter într-un șir (Metoda I)

Se citește de la tastatură un șir de caractere și un caracter. Să se elimine din șir toate aparițiile caracterului introdus, după care să se afișeze șirul modificat. Programul trebuie să fie case sensitive, adică să facă diferența dintre litere mici și litere mari.

Se citesc de la tastatură atât șirul de caractere, cât și caracterul care va fi eliminat. Se parcurge șirul, iar când se întâlnește litera introdusă, contorul c crește cu o unitate.

Vezi și: Algoritm pentru determinarea numărului de apariții a unui caracter într-un șir (Metoda II)

#include<iostream>
#include<cstring>
using namespace std;
int main()
{
    char s[100], x;
    int i, c=0;
    cout<<"Sirul este?"; cin.get(s, 99);
    cout<<"care este caracterul? "; cin>>x;
    for (i=0; i<strlen(s); i++)
        if (s[i]==x)
        c++;
    cout<<"Apare de "<<c<<" ori";
    return 0;
}

De asemenea, ai putea dori...

1 răspuns

  1. Manole Buican spune:

    Ce ziceti de urmatoarea implementare?

    Dupa citirea de la tastatura ….

    char *p; int c = 0;
    for (p = s; *p; c = *p == x ? c + 1 : c, p++)
    ;
    cout<<"Apare de "<<c<<" ori";

Lasă un răspuns

Acest sit folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.