jueves, 19 de mayo de 2011

aida y manolo compartido mediante slideshare

explicacion power point subida en formato swf

  1. Realizar una presentación sin transiciones sobre un grupo de Granada. Compartirla en el blog mediente el uso de Sildeshare y mediente su transformación a SWF. Explicar en el Blog las operaciones que han sido necesarias para realizar esto.


EXPLICACION PASO A PASO
Primero hemos entrado en la pagina web, www.freefileconvert.com
y hemos seguidos los pasos que nos indicaban.

1. input file

2. output format

3.converting


despues de que el archivo se encuntre en un formato swf, cunado lo abrimos pinchamos el enlace que nos muestra el mismo y lo colgamos en el blog.


    TIPOS DE LENGUAJES DE PROGRAMACION

    Los lenguajes de programación son herramientas que nos permiten crear programas y software. Entre ellos tenemos Delphi, Visual Basic, Pascal, Java, etc..
    Una computadora funciona bajo control de un programa el cual debe estar almacenado en la unidad de memoria; tales como el disco duro.
    Los lenguajes de programación de una computadora en particular se conoce como código de máquinas o lenguaje de máquinas

    Estan los lenguajes de programacion:
    1. LENGUAJES COMPILADOS
    2. LENGUAJES INTERPRETADOS
    3. LENGUAJES DE PROGRAMACIÓN DECLARATIVOS

    4. LENGUAJES DE PROGRAMACIÓN IMPERATIVOS
    5. DIFERENCIA ENTRE LENGUAJES DECLARATIVOS E IMPERATIVOS
    6. LENGUAJES DE PROGRAMACIÓN ORIENTADOS A OBJETOS




    1. LENGUAJES COMPILADOSNaturalmente, un programa que se escribe en un lenguaje de alto nivel también tiene que traducirse a un código que pueda utilizar la máquina. Los programas traductores que pueden realizar esta operación se llaman compiladores. Éstos, como los programas ensambladores avanzados, pueden generar muchas líneas de código de máquina por cada proposición del programa fuente. Se requiere una corrida de compilación antes de procesar los datos de un problema.
    Los compiladores son aquellos cuya función es traducir un programa escrito en un determinado lenguaje a un idioma que la computadora entienda (lenguaje máquina con código binario).
    Al usar un lenguaje compilado (como lo son los lenguajes del popular Visual Studio de Microsoft), el programa desarrollado nunca se ejecuta mientras haya errores, sino hasta que luego de haber compilado el programa, ya no aparecen errores en el código.


    2. LENGUAJES INTERPRETADOSSe puede también utilizar una alternativa diferente de los compiladores para traducir lenguajes de alto nivel. En vez de traducir el programa fuente y grabar en forma permanente el código objeto que se produce durante la corrida de compilación para utilizarlo en una corrida de producción futura, el programador sólo carga el programa fuente en la computadora junto con los datos que se van a procesar. A continuación, un programa intérprete, almacenado en el sistema operativo del disco, o incluido de manera permanente dentro de la máquina, convierte cada proposición del programa fuente en lenguaje de máquina conforme vaya siendo necesario durante el proceso de los datos. No se graba el código objeto para utilizarlo posteriormente.

    La siguiente vez que se utilice una instrucción, se le debe interpretar otra vez y traducir a lenguaje máquina. Por ejemplo, durante el procesamiento repetitivo de los pasos de un ciclo, cada instrucción del ciclo tendrá que volver a ser interpretado cada vez que se ejecute el ciclo, lo cual hace que el programa sea más lento en tiempo de ejecución (porque se va revisando el código en tiempo de ejecución) pero más rápido en tiempo de diseño (porque no se tiene que estar compilando a cada momento el código completo). El intérprete elimina la necesidad de realizar una corrida de compilación después de cada modificación del programa cuando se quiere agregar funciones o corregir errores; pero es obvio que un programa objeto compilado con antelación deberá ejecutarse con mucha mayor rapidez que uno que se debe interpretar a cada paso durante una corrida de producción.


    3. LENGUAJES DE PROGRAMACIÓN DECLARATIVOSSe les conoce como lenguajes declarativos en ciencias computacionales a aquellos lenguajes de programación en los cuales se le indica a la computadora qué es lo que se desea obtener o qué es lo que se esta buscando, por ejemplo: Obtener los nombres de todos los empleados que tengan más de 32 años. Eso se puede lograr con un lenguaje declarativo como SQL.
    La programación declarativa es una forma de programación que implica la descripción de un problema dado en lugar de proveer una solución para dicho problema, dejando la interpretación de los pasos específicos para llegar a dicha solución a un intérprete no especificado. La programación declarativa adopta, por lo tanto, un enfoque diferente al de la programación imperativa tradicional.
    En otras palabras, la programación declarativa provee el “qué”, pero deja el “cómo” liberado a la implementación particular del intérprete. Por lo tanto se puede ver que la programación declarativa tiene dos fases bien diferenciadas, la declaración y la interpretación.
    Es importante señalar que a pesar de hacer referencia a intérprete, no hay que limitarse a “lenguajes interpretados” en el sentido habitual del término, sino que también se puede estar trabajando con “lenguajes compilados”.


    4. LENGUAJES DE PROGRAMACIÓN IMPERATIVOSEn ciencias de la computación se llama lenguajes imperativos a aquellos en los cuales se le ordena a la computadora cómo realizar una tarea siguiendo una serie de pasos o instrucciones, por ejemplo:

    Paso 1, solicitar número.
    Paso 2, multiplicar número por dos.
    Paso 3, imprimir resultado de la operación.
    Paso 4, etc,

    El proceso anterior se puede realizar con un lenguaje imperativo como por ejemplo BASIC, C, C++, Java, Clipper, Dbase, C#, PHP, Perl, etc.
    Dentro de la programación imperativa, se tiene un conjunto de instrucciones que le indican al computador cómo realizar una tarea.
    Los lenguajes imperativos se basan en comandos u órdenes que se le dan a la computadora para que haga algo, con el fin de organizar o cambiar valores en ciertas partes de la memoria.
    La ejecución de estos comandos se realiza, en la mayor parte de ellos, secuencialmente, es decir, hasta que un comando no ha sido ejecutado no se lee el siguiente.
    Según el dominio, o mejor dicho con el propósito que se utiliza el programa, se puede hablar de lenguajes de dominio específico y de dominio general.


    4.1. LENGUAJES IMPERATIVOS PROCEDURALESEn los lenguajes tradicionales o procedurales, es la aplicación quien controla qué porciones de código se ejecuta, y la secuencia en que este se ejecuta. La ejecución de la aplicación se inicia con la primera línea de código, y sigue una ruta predefinida a través de la aplicación, llamando procedimientos según sea necesario.
    Los lenguajes procedurales están fundamentados en la utilización de variables para almacenar valores y en la realización de operaciones con los datos almacenados. Algunos ejemplos son: FORTRAN, PASCAL, C, ADA, ALGOL,…
    .

    4.2. ALGUNOS LENGUAJES IMPERATIVOSAlgunos lenguajes de programación imperativos que se pueden mencionar son:

    · BASIC
    · C
    · C++
    · Java
    · C#
    · PHP
    · Per


    l5. DIFERENCIA ENTRE LENGUAJES DECLARATIVOS E IMPERATIVOSEn los lenguajes declarativos las sentencias que se utilizan lo que hacen es describir el problema que se quiere solucionar, pero no las instrucciones necesarias para solucionarlo. Esto último se realizará mediante mecanismos internos de inferencia de información a partir de la descripción realizada.
    Los lenguajes imperativos describen paso a paso un conjunto de instrucciones que deben ejecutarse para variar el estado un programa y hallar la solución, es decir, un algoritmo en el que se describen los pasos necesarios para solucionar un problema.



    6. LENGUAJES DE PROGRAMACIÓN ORIENTADOS A OBJETOSEn la Programación Orientada a Objetos (POO u OOP según siglas en inglés) se definen los programas en términos de “clases de objetos”, objetos que son entidades que combinan estado (es decir, datos) comportamiento (esto es, procedimientos o métodos) e identidad (propiedad del objeto que lo diferencia del resto). La programación orientada a objetos expresa un programa como un conjunto de estos objetos, que colaboran entre ellos para realizar tareas. Esto permite hacer los programas módulos más fáciles de escribir, mantener y reutilizar.

    miércoles, 18 de mayo de 2011

    EL PSEUDOCODIGO

    El pseudocódigo (o falso lenguaje) es utilizado por programadores para describir algoritmos en un lenguaje humano simplificado que no es dependiente de ningún lenguaje de programación. Por este motivo puede ser implementado en cualquiera lenguaje por cualquier programador que utilice el pseudocodigo pseudocódigo.

    Características y partes

    Las principales características de este lenguaje son:
    1. Se puede ejecutar en un ordenador
    2. Es una forma de representación sencilla de utilizar y de manipular.
    3. Facilita el paso del programa al lenguaje de programación.
    4. Es independiente del lenguaje de programación que se vaya a utilizar.
    5. Es un método que facilita la programación y solución al algoritmo del programa.
    Todo documento en pseudocódigo debe permitir la descripción de:
    1. Instrucciones primitivas.
    2. Instrucciones de proceso.
    3. Instrucciones de control.
    4. Instrucciones compuestas.
    5. Instrucciones de descripción.
    Estructura a seguir en su realización:
    1. Cabecera.
      1. Programa.
      2. Modulo.
      3. Tipos de datos.
      4. Constantes.
      5. Variables.
    2. Cuerpo.
      1. Inicio.
      2. Instrucciones.
      3. Fin.
    Funciones y procedimientos


    Muchas personas prefieren distinguir entre funciones y procedimientos. Una función, al igual que una función matemática, recibe uno o varios valores de entrada y regresa una salida mientras que un procedimiento recibe una entrada y no genera ninguna salida aunque en algún caso podría devolver resultados a través de sus parámetros de entrada si estos se han declarado por referencia (ver formas de pasar argumentos a una función o procedimiento).
    En ambos casos es necesario dejar en claro cuáles son las entradas para el algoritmo, esto se hace comúnmente colocando estos valores entre paréntesis al principio o bien declarándolo explícitamente con un enunciado. En el caso de las funciones, es necesario colocar una palabra como regresar o devolver para indicar cuál es la salida generada por el algoritmo. Por ejemplo, el pseudocódigo de una función que permite calcular an (un número a elevado a potencia n).


     

    Un ejemplo de procedimiento seria el algoritmo de Ordenamiento de burbuja, por el que partiendo de una lista de valores estos se ordenan, nótese que en un procedimiento, no se calcula el valor de una función, sino que se realiza una acción, en este caso ordenar la lista.

    
   { \color{Sepia} \mathit{ procedimiento }} \;
   { \color{Blue}  \mathit{ DeLaBurbuja }} \; 
   (
      { \color{Green}  \mathit{ a }}
      { \color{Plum}   \mathit{ {}_0 }} ,
      { \color{Green}  \mathit{ a }}
      { \color{Plum}   \mathit{ {}_1 }} ,
      { \color{Green}  \mathit{ a }}
      { \color{Plum}   \mathit{ {}_2 }} ,
      \ldots,
      { \color{Green}  \mathit{ a }} {}_(
      { \color{Green}  \mathit{ {}_n }}
      { \color{Blue}   \mathit{ {}_- }}
      { \color{Plum}   \mathit{ {}_1}} {}_)
   )
    
   { \color{Sepia} \mathit{ para }} \;
   { \color{Green} \mathit{ i}} \;
   { \color{Blue}  \mathit{ \gets }} \;
   { \color{Plum}  \mathit{ 2}} \;
   { \color{Sepia} \mathit{ hasta }} \;
   { \color{Green} \mathit{ n}} \;
   { \color{Sepia} \mathit{ hacer }}
    
   { \color{Sepia} \mathit{ para }} \;
   { \color{Green} \mathit{ j}} \;
   { \color{Blue}  \mathit{ \gets }} \;
   { \color{Plum} \mathit{ 0}} \;
   { \color{Sepia} \mathit{ hasta }} \;
   { \color{Green} \mathit{ n }} \;
   { \color{Blue}  \mathit{ - }} \;
   { \color{Green} \mathit{ i }} \;
   { \color{Sepia} \mathit{ hacer }}
    
   { \color{Sepia} \mathit{ si }} \;
   { \color{Green} \mathit{ a }}    {}_(
   { \color{Green} \mathit{ {}_j }} {}_) \;
   { \color{Blue}  \mathit{ < }} \;
   { \color{Green} \mathit{ a }} {}_(
   { \color{Green} \mathit{ {}_j }}
   { \color{Blue}  \mathit{ {}_+ }}
   { \color{Plum}  \mathit{ {}_1}} {}_) \;
   { \color{Sepia} \mathit{ entonces }}
    
   { \color{Green} \mathit{ aux }} \;
   { \color{Blue}  \mathit{ \gets }} \;
   { \color{Green} \mathit{ a }}    {}_(
   { \color{Green} \mathit{ {}_j }} {}_) \;
    
   { \color{Green} \mathit{ a }}    {}_(
   { \color{Green} \mathit{ {}_j }} {}_) \;
   { \color{Blue}  \mathit{ \gets }} \;
   { \color{Green} \mathit{ a }} {}_(
   { \color{Green} \mathit{ {}_j }}
   { \color{Blue}  \mathit{ {}_+ }}
   { \color{Plum}  \mathit{ {}_1}} {}_)
    
   { \color{Green} \mathit{ a }} {}_(
   { \color{Green} \mathit{ {}_j }}
   { \color{Blue}  \mathit{ {}_+ }}
   { \color{Plum}  \mathit{ {}_1}} {}_) \;
   { \color{Blue}  \mathit{ \gets }} \;
   { \color{Green} \mathit{ aux }}
    
   { \color{Sepia} \mathit{ fin \; si }}
    
   { \color{Sepia} \mathit{ fin \; para }}
    
   { \color{Sepia} \mathit{ fin \; para }}
    
   { \color{Sepia} \mathit{ fin \; procedimiento }}
    DIAGRAMA DE FLUJO


    Archivo:DiagramaFlujoLampara.svg

    miércoles, 23 de febrero de 2011

    8 escritorios alternativos para Linux

    La mayoría de usuarios de Linux están familiarizados con GNOME y KDE, pues ambos son los entornos de escritorio más usados por las principalesdistribuciones Linux. Ahora si tienes una vieja PC con hardware de bajas prestaciones, podrias encontrar que esos dos entornos de escritorio son demasiado pesados para manejar su equipo. En este caso tendrás que considerar la posibilidad de utilizar algún entorno de escritorio alternativo, como por ejemplo:
    1.      XFCE. Es un entorno de escritorio ligero para sistemas operativos Unix. Su objetivo es ser rápido y ligero, sin dejar de ser visualmente atractivo y fácil de usar. Se basa en el kit  de herramientas GTK+ que es el mismo que GNOME, por lo que si siempre han sido un usuario de este, encontrarán muchas familiaridades en XFCE.
    2.      Enlightement. Es revolucionario, visualmente atractivo y extremadamente fácil de usar. Si bien la mayoría de los gestores ligeros tira todos los efectos gráficos para reducir el requisito hardware, Enlightement hace lo contrario.
    3.      FVWM-Crystal. Se basa en el gestor de ventanas FVWM. Se mantiene flexible y altamente configurable y ha añadido muchas mejoras de usabilidad a su interface gráfica.
    4.      LXDE. LXDE es simplemente una versión ligera de GNOME y KDE combinadas. Tienes el panel inferior como KDE y el estilo de GNOME en la interfaz, por lo que no hay nada realmente nuevo que puedas aprender. Si no quieres apartarte demasiado lejos de GNOME o KDE, entonces LXDE sería una buena alternativa.
    5.      IceWM. IceWM es simple y altamente configurable. Todos los ajustes se almacenan como archivos de texto sin formato en el directorio home del usuario, por lo que es fácil de personalizarlo y configurarlo. Puedes aplicar tu tema favorito y hacer que parezca Windows Vista, Mac OS X o lo que quieras.
    6.      Fluxbox. Se considera un entorno de escritorio minimalista con el mínimo apoyo gráfico y con sólo una barra de tareas en todo el escritorio. No verás ningún menú de todo, pero puedes acceder fácilmente al menú pulsando el botón derecho del ratón.
    7.      Window Maker. Es uno de los pocos entornos de escritorio que ofrece una herramienta gráfica para configurar la configuración del sistema.Wprefs es muy fácil de usar y elimina el uso de archivos de texto sin formato para asegurar que cualquier usuario, ya sea un novato o un experimentado usuario de Linux. pueda configurarlo y personalizarlo fácilmente.
    8.      AfterStep. Originalmente basado en el aspecto de la interfaz deNeXTStep, AfterStep proporciona a sus usuarios un coherente, limpio y elegante escritorio que puede funcionar en cualquier PC de baja gama. Dado que en el mismo como otros entornos de escritorio es ligero, rápido, estable, fácil de usar y fácil de configurar.