miércoles, 14 de marzo de 2012

Diplomado Windows Phone LATAM

 

image

                             Audiencia                               

El diplomado está diseñado para perfil de desarrolladores con un mínimo de 6 meses de experiencia en el lenguaje C# que quieran conocer todo el proceso de desarrollo de aplicaciones para Windows Phone.

                                    Objetivos                             

  • Conocer las características de hardware principales de Windows Phone.
  • Diseñar aplicaciones con el lenguaje de diseño metro.
  • Desarrollar aplicaciones bajo los componentes de Silverlight.
  • Aprovechar la experiencia de navegación de Windows Phone dentro de aplicaciones.
  • Almacenar datos para acceder a ellos desde tu aplicación.
  • Diferenciar entre el distinto uso de comunicaciones y redes.
  • Usar las diferentes APIs del teléfono.
  • Hacer uso del multitasking.
  • Publicar tus aplicaciones en el marketplace de Windows Phone

                                  Registro                                 

Iniciaremos el curso el día Lunes 26 de Marzo. Te invitamos a conocer la página del diplomado donde podrás ver el video informativo que explica la metodología del curso para que inicies el diplomado de manera puntual.

  • Para entrar a la página del curso haz clic aquí.

  • Para tu inscripción formal, entra a nuestra página de registro aquí.

  • Únete al grupo de Facebook y de Twitter para mantenerte siempre informado y colabora con la comunidad.

Una vez enviado el registro, tendrás que validar tu inscripción a través de un correo electrónico que recibirás, de otra manera no quedarás inscrito.

Nota: Ten en consideración que los correos que recibirás de este diplomado vendrán del dominio: ti-capacitacion.com por lo que te pedimos revises con tu departamento de TI o en tu correo electrónico que no se bloqueé ningún correo proveniente de este dominio.

viernes, 6 de enero de 2012

Ejercicio soldados LISP

Ejercicio # 1

1.      Descripción
Se encuentra un número n de soldados formando una circunferencia, en el centro existe un soldado A de otro bando encargado de matar a los soldados de la circunferencia, la instrucción que recibe el soldado A es matar a todos los soldados menos a uno, para ello tiene que matar de la siguiente manera:

a.       Enumera primero a los soldados.
b.      Mata al primer soldado.
c.       Bucle, hasta que solo uno quede vivo.
d.      Deja vivir al siguiente soldado.
e.       Mata al siguiente soldado.
Ejemplo: Si se tienen 7 soldados el proceso sería:

Quedando vivo el soldado número 6.
Desarrollar el Lisp un programa que devuelva el número que le pertenece al soldado vivo.
2.      Solución
(defun soldados (n)
            (setq estado 1)
            (setq c 0)
            (setq l '())
            (lista c)
            (elimina l)
)
(defun lista (c)
            (setq c (+ c 1))
            (setq l (append l (list c)))
            (if (> n c) (lista c) l)
) 
(defun elimina (l1)       
            (if (= estado 0) (setq l1 (append (cdr l1) (list (car l1)))))
            (if (= estado 1) (setq l1 (cdr l1)))          
            (if (= estado 1) (setq estado 0) (setq estado 1))
            (if (cdr l1) (elimina l1) (car l1))
  )

3.      Ejecución

miércoles, 4 de enero de 2012

Ejercicio Espiral en LISP
1. Descripción

Defina una función que genere un espiral, ingresando como datos de inicio el diámetro, las coordenadas (x, y), y el número de vueltas que realizará la espiral.
2. Solución
(defun espiral (d c v) definimos la función espiral con los datos requeridos
(setq x (car c)) Obtenemos la primera coordenada x
(setq y (cadr c)) Obtenemos la segunda coordenada y
(setq p 2)inicializamos la variable p=2 para incrementar el radio en x
(setq i 1) inicializamos la variable i=1 para incrementar el radio en y
(setq r (/ d 2)) obtenemos el valor de radio
(setq a (- x r)) se usa como centro para los arcos superiores
(setq b y) se usa com centro para los arcos inferiores
(dibuja v) se llama a la función para graficar
)
(defun dibuja (v)
(command "_arc" (list (- a (* i r)) b) (list a (+ b (* i r))) (list (+ a (* i r)) b)) se agregan los puntos a ser graficados
(command "_arc" (list (- x (* p r)) y) (list x (- y (* p r))) (list (+ x (* p r)) y)) se agregan los puntos a ser graficados
(setq i (+ i 2)) incrementamos valores los radios superiores
(setq p (+ p 2))incrementamos valores los radios inferiores
(setq v (- v 1))
(if (> v 0) (dibuja v)) se llama a lafunción recursivamente hasta que deje de cumplir la misma.
)
3. Ejecución
Ejercicios LISP (Parte 3)
Ejercicio # 1
      1.      Descripción

      Desarrollar una función que permita dibujar n circunferencias contiguas.

Ejm:

      > (dibuja 3)

      2.      Solución
     
      > (defun dibuja (a)
         (setq n 100)
         (dib a)
         )

       > (defun dib (a)
          (if (> a 0) (circle n 100) )
          (if (> a 0) (setq n (+ n 300)))
          (setq aux (- a 1))
          (if (> a 0) (dib aux))
          )

      > (defun circle (x y)
         (command "_circle" (list x y) 100)
         )

3.      Ejecución

Ejercicio # 2
      1.      Descripción

      Desarrollar un programa en AutoLISP que permita graficar círculos concéntricos, dados como parámetros el centro del círculo y el diámetro, en donde cada circulo tendrá como diámetro la mitad del anterior circulo hasta que el diámetro cambiante sea menor que la octava parte del diámetro original.

2.      Solución

      > (defun dibuja (x y dia)
        (dib x y dia (/ dia 2))
        )
     
      > (defun dib (x y d rd)
         (if (> (* rd 2) (/ d 8)) (command "_circle" (list x y) rd))
         (if (> (* rd 2) (/ d 8)) (dib x y d  (/ rd 2))))

      3.      Ejecución

Ejercicios LISP (Parte 2)
Ejercicio # 1

1.      Descripción
Defina una función “nesimo” que dado un entero “n” y una lista “L” retorne una nueva lista eliminando el n-ésimo elemento de la lista.

$ (nesimo 3 '(1 -3 5 4 9))
(1 -3 4 9)

2.      Solución

Ø  (defun enesimo (l n)
          (setq Cont 0) //declaro el contador
          (setq Res '()) //declare variable de almacenamiento de respuesta
          (ejer l n) //llamo al otro procedimiento
          (print res)  //imprimo la respuesta
          )

Ø  (defun ejer (l n)
           (setq cont (+ cont 1)) // incremento el contador
           (if (/= cont n) //evalúo si me encuentro en la posición a descartar
           (setq res (append res (list (car l)))) //construyo la lista resultante
           )
          (if (cdr l)
          (ejer (cdr l) n) //regreso al método en caso de tener más datos en la lista
          )
         )

3.      Ejecución
Ejercicio # 2

1.      Descripción

Defina una función “MULTCICL”, tal que dado un entero positivo “n” y una lista “L” retorna una nueva lista multiplicando cada elemento por n, n-1, n-2, …

$ (multcicl 3 '(1 2 3 4 5))

2.      Solución
      
       Ø  (defun multcicl (n l)
           (setq aux (+ 1 n))
           (setq res '())
           (oper n l)
           (print res)
           )

       Ø  (defun oper (n l)
           (setq aux (- aux 1))
           (setq res (append res (list  (* aux (car l))) ) )
           (if (cdr l)
           (oper n (cdr l))
           ) )

3.      Ejecución