domingo, 14 de febrero de 2016

ALGORITMOS Y PROGRAMAS

                     ALGORITMOS Y PROGRAMAS

  Concepto de algoritmo:


Sabemos que para que un ordenador pueda llevar adelante una tarea
cualquiera, se tiene que contar con un algoritmo que le indique, a través de un
programa, que es lo que debe hacer con la mayor precisión posible. Quizás esta
afirmación debería ser revisada desde la óptica de la Inteligencia Artificial, pero
por el momento la mantendremos como válida dentro del carácter introductorio de
este curso. Consecuencia de lo anterior es la importancia del estudio de los
algoritmos dentro de las Ciencias de la Computación. Recordemos que un
algoritmo es “una sucesión finita de pasos no ambiguos que se pueden ejecutar en
un tiempo finito”, cuya razón de ser es la de resolver problemas; por tanto
“problema” para nosotros, serán aquellas cuestiones, conceptuales o prácticas ,
cuya solución es expresable mediante un algoritmo. Afortunadamente, son muchos
los problemas cuya solución puede describirse por medio de un algoritmo.




      Análisis del problema:

El objetivo del análisis del problema, es ayudar al programador a llegar a
una cierta comprensión de la naturaleza del mismo. Este análisis supone, en
particular, la superación de una serie de pasos .

1:Definir el problema con total precisión.

2: Especificar los datos de partida necesarios para la resolución del
mismo (especificaciones de entrada).

3: Especificar la información que debe proporcionarse al resolverse
(especificaciones de salida).












lunes, 8 de febrero de 2016

       HISTORIA Y EVOLUCIÓN   DE LOS LENGUAJES                                         DE PROGRAMACIÓN 



  El conjunto de ordenes e instrucciones que se dan al ordenador para que resuelva un problema o ejecute una determinada misión, recibe el nombre de programa. En los primeros tiempos de la informatica, la programacion se efectuaba en el ˙nico lenguaje que entiende el microprocesador: su propio codigo binario, tambien denominado lenguaje maquina o codigo maquina.


            linea del tiempo

DÉCADA DE LOS 50¨

principios de los 50 se crea una notación simbólica, denominada código de ensamblaje (ASEMBLAR), que utiliza una serie de abreviaturas mnemotecnias para representar las operaciones (figura 1): AD D (sumar), STORE (copiar), etc .. Al principio, la traducción del código de ensamblaje al código máquina se realizaba manualmente, pero enseguida se vio que el ordenador también podía encargarse de esa traducción; se desarrollo asÌ un programa traductor, llamado ensambladura (ASEMBLAR).

 Al comienzo de la dÈcada de los 50, John Backus estaba trabajando con SSEC (Selective Sequence Electronic Calculator), uno de los primeros ordenadores de IBM, y desarrollÛ el programa SPEEDCODING para Èl. Tomando Èste como base, se emprendiÛ, en otoÒo de 1954, la creaciÛn de un lenguaje para aÒadirle m·s prestaciones al modelo IBM 704, que iba a salir pronto al mercado.

A finales de los 50, el Departamento de Defensa USA estaba bastante preocupado con los lenguajes de programaciÛn existentes, especialmente por dos razones: los programas no podÌan llevarse de un ordenador a otro y resultaban bastante difÌciles de leer y modificar. Para solventar estos inconvenientes, patrocinÛ una conferencia sobre lenguajes (CODASYL, COnference on DAta SYstems Languages), que tuvo lugar en 1959 y en la que participaron las grandes empresas del sector (IBM, Sperry Rand, Honey Well, etc.). Como era previsible, formaba parte del comitÈ la gran dama de la inform·tica, Grace Hopper

POST DECADA 50

M·s tarde, Microsoft adaptÛ su BASIC a los productos de Apple, a los microordenadores y, lo m·s importante, al PC de IBM; de hecho, el sistema operativo MSDOS incluÌa la versiÛn GW-BASIC. En resumen, mucha gente aprendiÛ a programar en BASIC con su ZX-Spectrum o su primer PC y, una vez dominado un lenguaje, es comprensible una cierta reticencia al cambio. Adem·s de GW-BASIC, hubo otras versiones que tuvieron cierta difusiÛn en los 80, como Turbo BASIC (de Borland) y QuickBASIC (de Microsoft). De hecho, hasta Kemeny y Kurtz intentaron aprovechar el Èxito de su creaciÛn y, en 1983, crearon True BASIC (figura 7), cuya comercializaciÛn no resultÛ muy fructÌfera6.
John G. Kemeny y Thomas E. Kurtz eran profesores del Dartmouth College (New Hampshire) y, en 1964, diseÒaron un nuevo lenguaje que permitiera introducirse a sus estudiantes en los sistemas de tiempo compartido. Ese lenguaje, al que llamaron BASIC por su sencillez5, es, sin duda, el m·s difundido, aplic·ndose tanto en tareas de gestiÛn como en aplicaciones cientÌficas

En 1964, Seymour Papert se incorporÛ al MIT, tras haber permanecido cinco aÒos en Suiza, colaborando con el pedagogo Jean Piaget (1896-1980). Tres aÒos despuÈs, Papert comenzÛ a diseÒar un lenguaje que sirviera para introducir en el mundo de la programaciÛn al alumnado de menor edad (figura 8)Ö ì°Que los niÒos programen a los ordenadores y no los ordenadores a los niÒos!î
1980, Papert lo divulgÛ en todo el mundo con su libro ìMindstorms: Children Computers and Powerful Ideasî (figura 9), fue muy bien acogido en los ·mbitos educativos, especialmente en enseÒanza primaria y secundaria
A principios de los 70, el profesor suizo Niklaus Wirth (figura 13), del Instituto PolitÈcnico Federal de Zurich, emprendiÛ la creaciÛn de un nuevo lenguaje (PASCAL) que permitiera introducirse en la programaciÛn de una forma f·cil pero a la vez potente y, sobre todo, siguiendo unas pautas estructuradas. De hecho, PASCAL es el lenguaje m·s sencillo que posibilita el acceso a la inform·tica teÛrica: descomposiciÛn modular, recursividad, punteros, etc.

 Durante m·s de un dÈcada, Turbo PASCAL ha sido sinÛnimo de PASCAL, pero, por desgracia, en el aÒo 2000, Borland dejÛ de darle soporte tÈcnico y su presencia es cada dÌa menor en el ·mbito de la programaciÛn, sobreviviendo a duras penas en el mundo



Creación del Lenguaje Ensamblador

Creación del Lenguaje Ensamblador
Mauricio V. Vilkes inventa el lenguaje ensamblador.Anteriormente la programación cuándo se efectuaba directly en binario. Cada modelo de Ordenador tenia su propio código Lo Que dificultaba su Manejo.


Lenguaje Fortran

Lenguaje Fortran
Jhon Backus de IBM inventa Fortran, el cebador de Lenguaje de programación universal, considerado de Alto Nivel, de propósito m e imperativo general.


Creación del lenguaje Lisp

Creación del lenguaje Lisp
Despues de Fortran FUE El Segundo Lenguaje de programación de alto Nivel. CREADO por Jhon McCarthy en el MIT. El Elemento fundamental de Lisp es la lista, pues Tanto la ONU dato o Una función f se Expresa Como una Lista. Fue Desarrollado inicialmente Sobre ONU IBM 7090



Se inventa Cobol

Se inventa Cobol
Lenguaje de programación Que se Invento Con El Objetivo de utilizarse en any Computadora. Se caracterizó por Tener Una excelente s capacidad de autodocumentación, buena gestión de Archivos y de Datos de la Época.



Se inventa el Lenguaje Básico

Se inventa el Lenguaje Básico
Lenguaje de programación Desarrollado por Jhon Kemeny y Thomas Kurts en Estados Unidos.Inicialmente se Desarrollo para facilitar a los Estudiantes a Programar computadoras. Su propósito m USO época párrafo en general, AUNQUE ONU del tanto lento y simple.



Creación de Pascal

Creación de Pascal
Pascal Es Un lenguaje de programación de alto Nivel CREADO por Nicklaus Wirth. Se convirtio en uno de los lenguajes Más utilizados en cursos de Introducción a la programación. Se DESARROLLO Para Hacer Posible la programación cuándo estructurada y también Soporta la programación cuándo Orientada a Objetos.



Lenguaje de programación C

Lenguaje de programación C
Dennis Ritchie de los Laboratorios de Bell reanuda el lenguaje B escrito por Ken Thompson Convierte Y Lo verdadero miembro En un compilador Que géneros EL CODIGO Máquina (B era intérprete de la ONU). C es utilizado por la Eficiencia de su código para Generar Aplicaciones y software de Sistemas.



Nueva Computadora

Nueva Computadora
Mi papa compra Una Computadora KeyPro con MSDos Que solo la utilizaba para Escribir cartas, tenia UNA Pantalla verde y Solo diskets utilizaba de 5 Pulgadas, recuerdo Que todavia la vi Cuando Era Niño.
La de la IMEGEN Es Una Osbuorne 1, muy parecida a la KeyPro




Java

Java
Lenguaje de programación Desarrollado por Sun Microsystems. Se Desarrollo de tal forma Que los Programas desarrollados con Java puedan ejecutarse de la Misma Manera en Diferentes arquitecturas. Java permite Escribir Programas de Gráficos o Textuales.



Aparece Phyton

Aparece Phyton
Desarrollado por Guido van Rossum, Es Un lenguaje de programación de alto Nivel, Posee Una sintaxis amplia ¿Así Como favorece el código legible.
Soporta programación imperativa, Orientada a Objetos, multiplataforma, Manejo de Excepciones y Es Un lenguaje interpretado.