Ejercicio: 3Eva_IIT2015_T2 Gestionar mensajes con etiquetas
Propuesta de solución en Python 3ra Eva. II Término 2015 Tema 1 y 2
# ICM00794-Fundamentos de Computación - FCNM-ESPOL # 3Eva_IIT2015_T2 Gestionar mensajes con etiquetas # propuesta: edelros@espol.edu.ec # version con lazos y condicionales. # tarea: simplificar con 'for' import numpy as np # Tema 1. literal a) def buscaetiqueta(mensaje): n = len(mensaje) etiquetas = [] copia = 0 i = 0 while not(i>=n): #Inicia copia etiqueta if (mensaje[i]=='#'): copia = 1 encontre = '' if (copia==1): encontre = encontre + mensaje[i] if (i<(n-1)): if (mensaje[i+1]==' ' or mensaje[i+1]==','): copia = 0 etiquetas.append(encontre) if (i==(n-1)): etiquetas.append(encontre) i = i + 1 return(etiquetas) # Tema 1. literal b) def tabulando(lista): n = len(lista) # usando listas repetido = np.zeros(n,dtype=int) numrepetido = 0 # Marcando repetidos i = 0 while not(i>=(n-1)): j = i + 1 while not(j>=n): if (lista[i]==lista[j]): repetido[j]=1 numrepetido=numrepetido+1 j = j + 1 i = i + 1 #copia vector unicos, tabula usando arreglo unicos = [] i = 0 while not(i>=n): if (repetido[i]==0): unicos.append([lista[i],0]) i = i + 1 k = len(unicos) # Cuenta y Acumula i = 0 while not(i>=n): #busca posicion en unicos j = 0 while not(j>=k): if (lista[i]==unicos[j][0]): unicos[j][1] = unicos[j][1]+1 j = j + 1 i = i + 1 return(unicos) # Tema 2. Admnistra mensajes de una red social usuario = [] mensaje = [] opcion = 0 while not(opcion==4): print('1. Ingresar mensaje') print('2. Usuario frecuente') print('3. Tendencias') print('4. Salir') opcion = int(input('cual opcion: ')) if (opcion==1): print('1. Ingresar mensaje') quien = input('nombre usuario: ') dice = input('mensaje: ') usuario.append(quien) mensaje.append(dice) if (opcion==2): print('2. Usuario frecuente') quienes = tabulando(usuario) n = len(quienes) mayor = 0 k = 1 while not (k>=n): if (quienes[k][1]>quienes[mayor][1]): mayor = k k = k + 1 print('los usuarios:') print(quienes) print('el usuario mas frecuente es: ', quienes[mayor][0]) if (opcion==3): print('3. Tendencias') n = len(mensaje) todaetiqueta = [] i = 0 while not(i>=n): cuales = buscaetiqueta(mensaje[i]) m = len(cuales) if (m>0): j = 0 #añade cada etiqueta while not(j>=m): todaetiqueta.append(cuales[j]) j = j+1 i = i + 1 etiquetas = tabulando(todaetiqueta) n = len(etiquetas) mayor = 0 k = 1 while not (k>=n): if (etiquetas[k][1]>etiquetas[mayor][1]): mayor = k k = k + 1 print(etiquetas) print('La tendencia es: ',etiquetas[mayor][0]) if (opcion==4): print('Gracias por usar el software')