Autor
|
Tema: Reto/Juego Ejercicios en Python (Leído 35,402 veces)
|
Littlehorse
All the world's a stage
Colaborador
Desconectado
Mensajes: 2.714
Nie Dam Sie
|
R.N.A esta mal el código, agregas la cantidad de ceros incorrectos y por el lado incorrecto. Hasta que sea múltiplo de 8 y por la izquierda!
Igualmente deja tu reto que esta interesante así lo vamos haciendo mientras corriges el anterior.
|
|
|
En línea
|
An expert is a man who has made all the mistakes which can be made, in a very narrow field.
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Lo hice de la manera difícil, pero eficiente n = int(input('Ingresa numero de empleados: ')) l = [] for i in range(n): t = input('Empleado '+str(i+1)+' :').split(' ') l.append([int(t[0]),int(t[1]),int(t[2])]) i,c = 0,0 while i<len(l)-1: e = i while e<len(l): if l[e][0]>l[i][0] and l[e][1]>l[i][1] and l[e][2]<l[i][2]: l.pop(i) i += -1 c += 1 break elif l[i][0]>l[e][0] and l[i][1]>l[e][1] and l[i][2]<l[e][2]: l.pop(e) e += -1 c += 1 e += 1 i += 1 print('Cantidad de Empleados Despedidos: '+ str(c))
El reto será:Crear un script que reciba un número como parámetro y muestre su factorización, tomando en cuenta además, que los factores repetidos deben de ser mostrados como potencia. Ejemplo: Numero: 432 Resultado: 2^4 x 3^3 Numero: 168 Resultado: 2^3 x 3 x 7 Y el reto "plus" para quienes quieran hacerlo será:Crea un script que reciba un directorio (no es necesario recorrer subdirectorios) como parametro, calcule hash para los archivos dentro del mismo, y consulte virustotal en busca de un análisis previo. Se deberá de mostrar fecha y número total de AV que lo detectan, o un mensaje en caso de no haber un análisis. :http://www.virustotal.com/advanced.html#publicapi Saludos
|
|
« Última modificación: 7 Septiembre 2010, 02:59 am por Novlucker »
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
[L]ord [R]NA
Desconectado
Mensajes: 1.513
El Dictador y Verdugo de H-Sec
|
from math import sqrt lista = [] e=0 a=int(raw_input("Introduzca el numero: ")) res=set() if a>1: for i in range(2,int(sqrt(a))+1): if i not in res: for j in range(i,a/i+1): res.add(i*j) for i in range(2,a+1): if i not in res: if not a%i: lista.append([i,0]) e+=1 while a%i==0: lista[e-1][1]+=1 a/=i s="" for i in range(0,len(lista)): if lista[i][1]<2: s += str(lista[i][0]) else: s += str(lista[i][0])+"^"+str(lista[i][1]) if i<len(lista)-1: s+=" x " else: s=a print s
Reto: Dado un punto en un plano tridimensional y una cantidad N de puntos en el plano, organizar los puntos con respecto a su cercania con el punto dado.Nota: La salida sera representada con un numero de orden con respecto a cercania y las coordenadas del punto en el plano. Nota: Los valores de los puntos seran introducidos como tuplas---Valores de entrada--- Cantidad de puntos: 3 Coordenadas del Punto Central: (3,-1,0) Coordenadas del Punto(1): (4,2,4) Coordenadas del Punto(2): (3,4,1) Coordenadas del Punto(3): (0,5,2)
---Valor de Salida--- 1) (3,4,1) 2) (4,2,4) 3) (0,5,2)
|
|
« Última modificación: 6 Septiembre 2010, 22:22 pm por Lord R.N.A. »
|
En línea
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Sobre el reto 2 que había dejado Littlehorse, el de who, lo había empezado pero me da pereza seguir parseando el html a mano, así que dejo el desastre que llevaba import urllib.request userid = 'u'+input('Ingresa id de perfil: ') whocont = '' start = 0 while whocont.find('Visitante') == -1: whocont = str(urllib.request.urlopen('http://foro.elhacker.net/who.html;start='+str(start)+';sort=user').read()) whousrs = whocont.split('/profiles/') for user in whousrs: if user.find(userid) != -1: username = user[user.find('>')+1:user.find('</')] sts = user.find('<td>')+4 status = user[sts:user.find('</td>',sts)] print(username + ' - ' + status) break start+=15
Saludos
|
|
« Última modificación: 7 Septiembre 2010, 15:20 pm por Novlucker »
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Y la solución al reto de Lord R.N.Aimport math n = int(input('Ingrese numero de puntos: ')) cp = eval(input('Ingrese coordenadas de punto central: ')) points,a = [],[] for i in range(n): points.append(eval(input('Coordenadas del Punto('+str(i+1)+') :'))) c = 0 for i in points: point = (cp[0]-i[0],cp[1]-i[1],cp[2]-i[2]) d = math.sqrt(point[0]**2+point[1]**2+point[2]**2) a.append([c,d]) c+=1 a.sort(key=lambda i: i[1]) for i in a: print(points[i[0]])
Pensando en un reto Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Y aquí va el ejercicio. Crear un script que dada una cantidad N de numeros (se le pediran al usuario), determine si hay numeros amigos entre ellos e imprima los pares de números en tuplas Ejemplo: ---Valores de entrada--- Cantidad de numeros: 3 Numero 1: 230 Numero 2: 220 Numero 3: 284
---Valores de salida--- (220, 284) Los números amigos son aquellos para los cuales la suma de los divisores de uno, es igual al otro valor. Siguiendo con el ejemplo. Divisores de 220 -> 1, 2, 4, 5, 10, 11, 20, 22, 44, 55 y 110 = 284Divisores de 284 -> 1, 2, 4, 71 y 142 = 220Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
[L]ord [R]NA
Desconectado
Mensajes: 1.513
El Dictador y Verdugo de H-Sec
|
Aqui esta la respuesta... pongo reto cuando vuelva de la universidad... unas 6 horas. cantidad = int(raw_input("Introduce la cantidad de numeros: ")) amigos = [] res = [] def friend(x): res = 0 for i in range(1,x): if x%i==0: res+=i return res for i in range(cantidad): a = int(raw_input("Introduce el valor numero "+str(i)+": ")) amigos.append([a,0]) amigos[i][1] = friend(amigos[i][0]) for i in range(len(amigos)): for j in range(i,len(amigos)): if (amigos[i][0] == amigos[j][1]) and (amigos[i][1] == amigos[j][0]): print "("+str(amigos[i][0])+","+str(amigos[j][0])+")"
|
|
« Última modificación: 8 Septiembre 2010, 22:52 pm por Lord R.N.A. »
|
En línea
|
|
|
|
[L]ord [R]NA
Desconectado
Mensajes: 1.513
El Dictador y Verdugo de H-Sec
|
Reto:Hombre de Negocios Un hombre de negocios tiene una secretaria... la muy tonta (Rubia al fin y al cabo) ha aceptado todas las reuniones que llegaban, que sucede, que ahora no puede ir a todas debido a algunos choques. Valor de Entrada Cantidad de Reuniones:5 Reunion (1): 7:30-10:00 Reunion (2): 16:50-18:00 Reunion (3): 11:00-17:00 Reunion (4): 9:00-12:00 Reunion (5): 15:00-16:00 Reto Facil: Colocar en secuencia las reuniones y quitar las que interfieran en espacios ocupados. Valor de Salida Cantidad de Reuniones Aptas: 2 1) 7:30-10:00 2) 11:00-17:00 Reto Dificil: Lograr ir al mayor numero de reuniones posibles. Valor de Salida Cantidad de Reuniones Aptas: 3 1) 7:30-10:00 2) 15:00-16:00 3) 16:50-18:00 Nota: La secretaria podria anotar un maximo de 1440 reuniones... total, ella no tendra que ir.
|
|
« Última modificación: 9 Septiembre 2010, 20:25 pm por Lord R.N.A. »
|
En línea
|
|
|
|
[L]ord [R]NA
Desconectado
Mensajes: 1.513
El Dictador y Verdugo de H-Sec
|
Si alguien desea obvie el reto y continuen con otro.
|
|
|
En línea
|
|
|
|
[L]ord [R]NA
Desconectado
Mensajes: 1.513
El Dictador y Verdugo de H-Sec
|
Bueno ya que nadie se motivo a hacer un reto dejare uno sencillo para que alguien siga. Reto: Quien toca.Realizar un script que haga la funcion de demonio para un portknocker. Ejemplo: Se recibiran 5 intentos de conexiones seguidas a puertos diferentes en la siguiente secuencia. 1) 64000 2)32000 3)16000 4)8000 5)4000 Si esa es la secuencia el script imprimira en pantalla secuencia correcta y colocara la hora y fecha actual. =>Secuencia Correcta: 00:00:00 01/01/0000
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
[Python] Sockets en Python [+Ejemplos y Ejercicios]
Scripting
|
Erik#
|
4
|
15,113
|
4 Abril 2013, 16:43 pm
por SelTzeR
|
|
|
Juego ejercicios [Python]
« 1 2 ... 15 16 »
Ejercicios
|
Masita
|
150
|
110,169
|
30 Mayo 2011, 20:44 pm
por caro.bello
|
|
|
Ejercicios Python! [Nivel:Principiante]
Ejercicios
|
kyps
|
6
|
21,221
|
8 Abril 2010, 19:46 pm
por xyz0k
|
|
|
Nevos Ejercicios En C# Reto!!!!
Ejercicios
|
Luiskalos
|
2
|
11,882
|
7 Enero 2011, 11:28 am
por Novlucker
|
|
|
Ayuda ejercicios de python
Scripting
|
jasson94
|
2
|
3,840
|
30 Octubre 2012, 01:39 am
por jasson94
|
|