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;
}