Décimo Primer Programa

#WSQ11 En este programa al igual que el WSQ09 trabajaremos en archivos, pero a diferencia del anterior buscaremos en el archivo la palabra «banana» y contaremos cuántas veces se menciona la palabra. Para esto crearemos un archivo txt e introduciremos la palabra banana las veces que queramos.

Este programa es de mayor complejidad que incluso utilizaremos distintas librerías para poder realizar el programa como por ejemplo <fstream>, <algorithm>,<cctype> y <string>.

Código:

#include <iostream>
#include <string>
#include <fstream>
#include <algorithm>
#include <cctype>
using std::cout;
using std::cin;
using std::endl;
using std::string;
using std::fstream;
using std::transform;
using std::tolower;
int find (string name)
{
fstream file;
file.open(name.c_str());
string line;
int contbanana=0;
do {
transform(line.begin(),line.end(),line.begin(), (int (*)(int))tolower);
int finding=line.find(«banana»);
while (finding!=-1)
{
contbanana++;
finding=line.find(«banana», finding+1);
}

}
while (getline (file, line));
return contbanana;
}

int main ()

{

string file;

cout << «Introduce un archivoen el formato txt: «<<endl;
cin >> file;
int num=find(file);
if (num>1)
{
cout<<«La palabra banana es repetida «<<num<<» vez»<<endl;
}
else
{
cout<<» La palabra banana es repetida «<<num<< » de veces «<<endl;
}

}

Referencias:

Downey, A. (2012). How to think like a computer scientist. Capítulo 15. Consultado en: http://www.greenteapress.com/thinkcpp/

WSQ11 CódigoWSQ11 ProgramaWSQ11 TXT

Deja un comentario