Version:0.9 StartHTML:0000000105 EndHTML:0000004027 StartFragment:0000000152 EndFragment:0000003993
/******************************************************/
/*************** Isidro Pastor Jorda ******************/
/******************************************************/
/****************** Telematica ************************/
/******************************************************/
/************* Practica 7 Ejercicio 1 *****************/
/******************************************************/

/* PRUEBAS PASADAS FUNCIONA OK */

#include <iostream.h>
#include <stdlib.h>
#include <string>

int main()
{

    string frase, palabra;
    int i, repeticiones, tamanyo;

    cout << " Programa para contar las veces que se repite una determinada palabra en una frase \n" ;
    cout << " Introduce la frase: ( Termina la frase con un punto. )";
    getline (cin, frase);
    cout << "\n Palabra a buscar: ";
    getline (cin, palabra);

    // i = 0;
    repeticiones = 0;

    tamanyo = palabra.length();

    while (i != -1 )
    {
        i = frase.find(palabra);
        // cout << " Encontrada en la posicion " << i << endl;


        if (( i == 0) && ((frase[i + tamanyo] == ' ' ) || (frase[i + tamanyo] == '.' )) ) // esta va bien
        {
            // cout << " Entramos en el primer if "<< endl;
            frase.erase(i,tamanyo);
            repeticiones++;
        }


        if ( i > 0)
        {
            if ((frase[i-1] == ' ') && ((frase[i + tamanyo] == ' ') || (frase[i + tamanyo] == '.' ))  )
            {
                //cout << " Entramos en espacio delante y detras \n";
                frase.erase(i,tamanyo);
                repeticiones++;
            }
            else
            {
                // cout << " Eliminamos un caracter perdido encontrado \n" ;
                 frase.erase(i,tamanyo);
            }

        }
    }
    cout << " Numero de repeticiones: " << repeticiones << endl;


    system("PAUSE");
    return 0;
}