Dev - C++ - Necesito completar un codigo que devuelva el numero de tweets por tipo de bebida

   
Vista:

Necesito completar un codigo que devuelva el numero de tweets por tipo de bebida

Publicado por Juan (2 intervenciones) el 28/06/2016 21:20:31
Necesito completar un codigo que haga lo siguiente

1. Número de tweets por tipo de bebida.
2. La bebida más mencionada

Adicionalmente, es necesario determinar cuántos tweets por tipo de bebida son “positivos” y, para esto, es
necesario verificar si existe una palabra positiva en el mismo tweet del tipo de bebida por lo que se le pide
calcular lo siguiente:

3. Número de palabras positivas por tipo de bebida.
4. La bebida con mejor evaluación positiva, en donde la evaluación corresponde al número de palabras
positivas que acompañan a la bebida por tweet.
5. La palabra positiva más repetida.

Tanto los nombres de bebidas como palabras positivas pueden aparecer más de una vez por tweet.
En ese
caso se debe contar múltiples veces un mismo tweet (cada aparición de la bebida y la palabra cuentan).
A continuación se listan los tipos de bebidas y las palabras positivas.

Bebidas

beer, gin, juice, suko, coca cola, Coca Cola, coca-cola, guarana, mojito, ron, tequila, wine .

Palabras positivas

save, hold, go for, drink, finished, Drinking, sound right, good, healthy, grande, great, enjoying, buy, free,
Hold, greatest, pong, get, orgulhoso, strawberry, plenty, got, win, tonic, fav, favorite, feed, courtesy, better,
taste, drinks, more, fresh, More, love, Love, popcorn, tastes, venti, prefiero, pizza, Pizza, likes, like, genial,
gosta, gusta, refrigerador, gustas, gostoso, gelado, reir, bom, tomar, beber, consumida, comsumir, fria,
comi, antojao, tomo, ganas, tomei, gostosa, shots.



Lo que llevo (no sé si voy por buen camino)

Código
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <fstream>

using namespace std;

bool espositivo(string input)
{
string GoodWords = "save,hold,go for,drink,finished,Drinking,sound right,good,healthy,grande,great,enjoying,buy,free,Hold,greatest,pong,get,orgulhoso,strawberry,plenty,got,win,tonic,fav,favorite,feed,courtesy,better,taste,drinks,more,fresh,More,love,Love,popcorn,tastes,venti,prefiero,pizza,Pizza,likes,like,genial,gosta,gusta,refrigerador,gustas,gostoso,gelado,reir,bom,tomar,beber,consumida,comsumir,fria,comi,antojao,tomo,ganas,tomei,gostosa,shots";
char *dup = strdup(GoodWords.c_str());
char *aux2 = strtok(dup,",");
while(aux2)
{
if(input.find(aux2) != string::npos)
{
return true;
}
aux2 = strtok(NULL,",");
}
return false;
}

int main()
{
ifstream Lector;
Lector.open("tweets.txt");
string Linea;
int beer = 0;
int lineas = 0;
while(getline(Lector,Linea))
{
lineas++;
cout << Linea << endl;
if (Linea.find("beer") != string::npos && espositivo(Linea)) {
beer++;
}
}
cout << "Lineas " << lineas << " Beer positivas " << beer << endl;
}






Archivo utilizado
tweet.txt
http://www.mediafire.com/download/dzdas8zozsasbv3/tweets.txt
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder