Como resolver este problema en c++ de Inteligencia Artificial

Iniciado por mariodos, Julio 09, 2015, 07:55:53 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Julio 09, 2015, 07:55:53 PM Ultima modificación: Julio 09, 2015, 08:17:59 PM por Gabriela
Bueno chicos resulta que me estoy aventurando por mi cuenta en c++ y quise pasar un codigo que tenia en python a este lenguaje...

Hace unos meses habia leido unos libros DE IA donde estaba el tema de recomendares y con el algoritmo base que te daban al libro me aventure ha pasarlo a python y ahora estoy tratando de hacer lo en c++(se me perdio el codigo pero aun tengo la idea de como hacerlo).

Y me pregunta es:
quiero hacer un sistema de recomendacion de platillos para una x cantidad de usuarios, en python ya lo hice pero lo quiero pasar en c++ para practicar.

Yo (en python) tengo una matriz de nx2 en el cual en la columna 1 tengo el nombre de una comida y en la columna dos tengo la calificacion del usuario a esa comida  ejemplo:

Código: python

juan = [["hamburguesa", 5],["tacos", 4],["pizza",2]]
maria=  [["hamburguesa", 4] , ["tacos", 1] , ["pizza",4]]

usuarios = [juan, maria]
if juan in usuarios:
#esto es true y puedo escribir mas codigo


El problema es que no puedo hacer esto en c++, yo lo intento hacer asi con la misma logica solo que no se como hacer algo asi lo haria:

Código: cpp

int const filas = 7;
    int const columnas=2;
    string juan[filas][columnas]= {{"yuca","2"},
                                    {"enchilada","3"},
                                    {"baleada","1"},
                                    {"hamburguesa","5"},
                                    {"pizza","4"},
                                    {"tacos","4"}};

    string carlos[filas][columnas]= {{"pollo","2"},
                                    {"torta","3"},
                                    {"baleada","1"},
                                    {"hamburguesa","5"},
                                    {"pizza","4"},
                                    {"tacos","4"}};

     string jose[filas][columnas]= {{"pollo","5"},
                                    {"torta","4"},
                                    {"baleada","4"},
                                    {"hamburguesa","5"},
                                    {"pizza","4"},
                                    {"tacos","2"}};
     string gustavo[filas][columnas]= {{"pollo","2"},
                                    {"torta","3"},
                                    {"baleada","1"},
                                    {"hamburguesa","5"},
                                    {"pizza","4"},
                                    {"tacos","4"}};

     string sergio[filas][columnas]= {{"pollo","2"},
                                    {"torta","3"},
                                    {"baleada","1"},
                                    {"hamburguesa","5"},
                                    {"pizza","4"},
                                    {"tacos","4"}};

     string angela[filas][columnas]= {{"pollo","2"},
                                    {"torta","3"},
                                    {"baleada","1"},
                                    {"hamburguesa","5"},
                                    {"pizza","4"},
                                    {"tacos","4"}};

     string alicia[filas][columnas]= {{"pollo","2"},
                                    {"torta","3"},
                                    {"baleada","1"},
                                    {"hamburguesa","5"},
                                    {"pizza","4"},
                                    {"tacos","4"}};

     string usuario[7]=[alicia,jose,carlos,gustavo,sergio,angela, juan]
/*
La verdad no se si podría hacer el alicia in usuario como en python para verificar que ese usuario esta ahi, sino tendría que hacerlo con un bucle..
*/


Si hago eso me sale un error, como si en usuario no podria almacenar las matrices, y otra duda como puedo cambiar los strings a enteros(en este caso los números que están declarados como un string ) creo que para pasar de de enteros a string se .c_string si no me equivoco pero yo probe haciendolo con c_int y me salio error.

Bueno esa es mi duda y muchas gracias por ayudarme.

Y de nuevo muchas gracias por leerlo todo. xD

Julio 09, 2015, 08:19:45 PM #1 Ultima modificación: Julio 09, 2015, 08:24:15 PM por Jimeno
String --> int:
Código: cpp
string a = "12";

int b = atoi(a.c_str());



Tu error se debe a que estás creando un array de strings y estás guardando arrays en él.
Te recomendaría hacer una clase Persona de la que crees varios objetos (las personas) y luego creases un array de Personas.
Contacto: @migueljimeno96 -

Muchas gracias, note el error que comentaste, por ahora no tengo mas dudas, quizas mas adelante.

Reitero muchas gracias por tu ayuda.