Dedicado a mis proyectos en Gambas ,un lenguaje de programación parecido al Visual Basic + Java pero ampliamente mejorado y...¡¡para gnu/linux!!.La potencia del gnu/linux sumada a la facilidad del Basic



Consultas, Desarrollo de programas y petición de presupuestos:



martes, 11 de junio de 2013

Curiosa Web: Ver los aviones que estan volando en cualquier parte del mundo en "directo"


Vuelos En Directo:
Ver los aviones que sobrevuelan  en cualquier parte del mundo en "directo"


Como web curiosa, he encontrado esta página donde podemos ver los aviones que están volando actualmente en cualquier parte del mundo, y pinchando sobre el icono del avión nos informa de datos como nombre del vuelo, altitud, velocidad, posición, de donde viene, a donde va...... 



Además, haciendo zoom, sobre el plano y cerca del icono de cualquier avión, podemos ver como se va desplazando el avión por el plano......

También informa de los aeropuertos:
http://www.flightradar24.com/data/airports/

Por ejemplo los de España: http://www.flightradar24.com/data/airports/Spain

Y por ejemplo el de sevilla: http://www.flightradar24.com/data/airports/svq




Nota:
También existe como aplicación para móvil:
 https://play.google.com/store/apps/details?id=com.flightradar24free&feature=search_result#?t=W251bGwsMSwxLDEsImNvbS5mbGlnaHRyYWRhcjI0ZnJlZSJd


Saludos

lunes, 10 de junio de 2013

Juego De Dominó hecho con Python (I)


Juego De Dominó hecho con Python (I)

A lo largo de una serie de artículos iré desarrollando un pequeño juego de domino realizado en Python, el objetivo es usar este lenguaje de programación para hacer  un ejemplo completo, manejando listas y  clases.

Debido al gran número de variantes que existen de este juego, me voy a basar en estas reglas:
- Número de piezas: 28

- Número de jugadores: 2 (que pueden ser Humano vs Humano,  Humano vs Cpu, o CPU vs CPY)

- Modo de juego:Torneo de:
  • 2 partidas
  • 4 partidas
  • el primero que consiga 100 puntos gana

- Inicio del turno del juego: el que tenga el 6 dobles

 -El tipo de juego va a ser de "Conocimiento Perfecto": conocemos las piezas de nuestro adversarios, para ello al inicio de la cada partida todas las fichas se reparten entre los dos jugadores (14 para cada uno).

-Condiciones para ganar:

  • Cuando un jugador se quede sin ninguna pieza, gana, sumando los puntos del adversario a su marcador
  • Cuando los dos jugadores pasen, osea, no puedan colocar ninguna pieza, se sumará los puntos de las fichas que tengan, y el que tenga menos ganará. Añadiéndose al marcador del ganador todos los puntos (tanto los suyos como los del adversario)

-La inteligencia artificial del la CPU tendrá varios niveles:

  • juego aleatorio: pondrá una ficha aleatoria.
  • juego "más pesado": coloca la pieza que mayor puntos tenga
  • juego "doble": si existe posibilidad de poner un doble, lo pone.

Nota:
Mejoras futuras: En principio lo desarrollaré en modo consola, no descarto la idea de hacerlo en entorno gráfico. Pienso también en mejorar la inteligencia artificial, usando el algoritmo minimax.


Mañana más.... :)

Saludos


Entradas relacionadas:
http://jsbsan.blogspot.com.es/2013/06/juego-de-domino-hecho-con-python-ii.html
http://jsbsan.blogspot.com.es/2013/06/juego-de-domino-hecho-con-python-iii-el.html

Python: Ejemplo de Clase, herencia y polimorfismo , y como recorrer lista de elementos

Python: Ejemplo de clase 
y 
como recorrer una lista de elementos

Os dejo aqui un simple ejemplo de como hacer una clase, y crear clases heredadas de ellas con python.


La clase padre se llama "cosa", que tiene varias propiedades (nombre, y apellidos)  y dos  métodos:

  • nombre: que asigna a las propiedades nombre y apellidos valores
  • ver: que muestra los valores del nombre y apellidos.

Luego defino la clase robot, que hereda de la clase "cosa", con un método nuevo llamado "calculista" y redefine el método ver.

La clase humano, que también es heredada de "cosa",  y define el método "calculista".

En el programa principal, se usa una variable "Lista" que contiene los dos objetos que creo (r1, y r2) que aunque son de distinto tipo, se pueden añadir a la lista sin ningún problema.

Luego se muestra el contenido de los objetos, de dos formas, directamente usándolo y  usando la lista con su indice correspondiente...




Otra forma más cómoda de  la lista de elementos seria usando for: