Software aplicado 2

17
Software aplicado 2 HABILITACION

description

trabajo

Transcript of Software aplicado 2

Page 1: Software aplicado 2

Software aplicado 2HABILITACION

Page 2: Software aplicado 2

Definición de programación

Lenguaje de programación es un conjunto de sintaxis y reglas semánticas que definen los programas del computador.

Lenguaje que los programadores usan para comunicar instrucciones a una computadora y poder ejecutar un programa.

Código utilizado para la creación de programas. Lo utilizan los programadores (generalmente especializados en un lenguaje en particular) para la creación de diversas aplicaciones. En informática, es cualquier forma de escritura (lenguaje) que posee determinadas instrucciones que combinadas y modificadas correctamente (dependiendo del resultado que se desee), podrán ser interpretadas y así resultar en un programa, página web, etc.

sistema de escritura para la descripción precisa de algoritmos o programas informáticos.

Lenguaje que se utiliza para redactar programas de computación. Conjunto de sentencias utilizadas para escribir secuencias de

instrucciones

Page 3: Software aplicado 2

Metodología de programacion

Programación ModularLa programación modular es uno de los métodos de diseño más flexibles y potentes para mejorar la productividad de un programa. En programación modular el programa se divide en módulos (partes independientes), cada una de las cuales ejecuta una única actividad o tarea y se codifican independientemente de otros módulos. Cada uno de estos módulos se analizan, codifican por separado. Cada programa contiene un módulo denominado programa principal, que controla todo lo que sucede, se transfiere el control a submódulos (posteriormente se denominan subprogramas), de modo que ellos puedan ejecutar sus funciones; sin embargo, cada submódulo devuelve el control al módulo principal cuando termina su tarea. Si la tarea asignada a cada submódulo es demasiado compleja, éste deberá dividirse en otros módulos más pequeños. El proceso sucesivo de subdivisión de módulos continúa hasta que cada módulo tenga solamente una tareas específica que ejecutar.

Page 4: Software aplicado 2

Que es un algoritmo

Un algoritmo es cualquier cosa que funcione paso a paso, donde cada paso se pueda describir sin ambigüedad y sin hacer referencia a una computadora en particular, y además tiene un límite fijo en cuanto a la cantidad de datos que se pueden leer/escribir en un solo paso. Esta amplia definición abarca tanto a algoritmos prácticos como aquellos que solo funcionan en teoría, por ejemplo el método de Newton y la eliminación de Gauss- Jordan funcionan, al menos en principio, con números de precisión infinita; sin embargo no es posible programar la precisión infinita en una computadora, y no por ello dejan de ser algoritmos.

Page 5: Software aplicado 2

Formas de representar un algoritmo

1. Pseudo- código

2. Diagramas de flujo

Page 6: Software aplicado 2

Simbología ANSI

Page 7: Software aplicado 2

Que es un lenguaje de programación

Un lenguaje de programación es un idioma artificial diseñado para expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana. Está formado de un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente

Page 8: Software aplicado 2

Clasificación según su nivel de abstraccion

Nivel de abstracción.Según el nivel de abstracción, o sea, según el grado de cercanía a la máquina:

Lenguajes de bajo nivel: La programación se realiza teniendo muy en cuenta las características del procesador. Ejemplo: Lenguajes ensamblador.

Lenguajes de nivel medio: Permiten un mayor grado de abstracción pero al mismo tiempo mantienen algunas cualidades de los lenguajes de bajo nivel. Ejemplo: C puede realizar operaciones lógicas y de desplazamiento con bits, tratar todos los tipos de datos como lo que son en realidad a bajo nivel (números), etc.

Lenguajes de alto nivel: Más parecidos al lenguaje humano. Manejan conceptos, tipos de datos, etc., de una manera cercana al pensamiento humano ignorando (abstrayéndose) del funcionamiento de la máquina. Ejemplos: Java, Ruby.

Page 9: Software aplicado 2

resumen histórico de los lenguajes de programación

Con la idea de facilitarnos las tareas que debemos de desempeñar los humanos, hemos venido inventado diversas herramientas a lo largo de nuestra historia, que nos permiten tener una mejor calidad de vida.

Los ordenadores son uno más de los inventos del hombre, aunque debemos decir que las tecnologías para su fabricación y explotación han tenido un desarrollo sorprendente a partir de la segunda mitad del siglo XX. Esta herramienta por sí sola no es capaz de efectuar ninguna tarea, es tan sólo un conjunto de cables y circuitos que necesitan recibir instrucción por parte de los humanos para desempeñar alguna tarea. El problema entonces, se puede fijar en ¿cómo vamos a poder hacer que un conjunto de circuitos desempeñen una determinada tarea y nos entreguen los resultados que nosotros esperamos?, es decir, ¿de qué manera se puede lograr la comunicación entre el hombre y el ordenador?.

Así pues, tratando de dar una solución al problema planteado, surgieron los lenguajes de programación, que son como un lenguaje cualquiera, pero simplificado y con ciertas normas, para poder trasmitir nuestros deseos al ordenador.

A partir de los años sesenta, empiezan a surgir diferentes lenguajes de programación, atendiendo a diversos enfoques, características y propósitos, que más adelante describiremos.

Por lo pronto, puede decirse, que actualmente existen alrededor de 2000 lenguajes de programación [KINNERSLEY 95] y continuamente, están apareciendo otros más nuevos, que prometen hacer mejor uso de los recursos computacionales y facilitar el trabajo de los programadores.

Page 10: Software aplicado 2

Tratando de resumir un poco, presentaremos los siguientes cuadros evolutivos, donde aparecen los lenguajes que por su uso y comercialización, han resultado ser los más populares a lo largo de este medio siglo. [LABRA 98] [RUS 01

Como ya lo citamos anteriormente y como se puede observar en las figuras a y b, la existencia de tantos lenguajes obedece a que cada uno de ellos está encaminado a resolver ciertas tareas, dentro de la amplia problemática de la explotación de la información, o bien, a que su arquitectura, o su forma de llevar a cabo la programación, tiene un enfoque particular. 1946: Konrad Zuse , un ingeniero Alemán mientras trabajaba en los Alpes de Babaría, desarrolló el lenguaje Plankalkul, el cual, fue aplicado entre otras cosas para jugar al ajedrez.

1949: Aparece Short Code, que viene a ser el primer lenguaje que fue usado en un dispositivo de cómputo electrónico, aunque se debe decir que se trata de un lenguaje traducido a mano.

1951: Grace Hopper , trabajando para Remington Rand, comenzó el trabajo de diseño del primer compilador conocido ampliamente, el A-0, el cual, al ser liberado por la compañía en 1957, lo hizo con el nombre de MATH-MATIC.

1952: Alick E. Glennie, durante su tiempo libre en la Universidad de Manchester, concibe un sistema de programación llamado AUTOCODE, que viene a ser un compilador muy rudimentario.

1957: aparece FORTRAN (formula translating) sistema traductor de fórmulas matemáticas. Fue desarrollado por un equipo, al frente del cual se encontraba John Backus quien después vendría a contribuir en el desarrollo del compilador para el lenguaje ALGOL y de la notación usada para la especificación sintáctica de los lenguajes.

Page 11: Software aplicado 2

A partir de los años sesenta, empiezan a surgir diferentes lenguajes de programación, atendiendo a diversos enfoques, características y propósitos, que más adelante describiremos.

Por lo pronto, puede decirse, que actualmente existen alrededor de 2000 lenguajes de programación [KINNERSLEY 95] y continuamente, están apareciendo otros más nuevos, que prometen hacer mejor uso de los recursos computacionales y facilitar el trabajo de los programadores.

Tratando de resumir un poco, presentaremos los siguientes cuadros evolutivos, donde aparecen los lenguajes que por su uso y comercialización, han resultado ser los más populares a lo largo de este medio siglo. [LABRA 98] [RUS 01

Como ya lo citamos anteriormente y como se puede observar en las figuras a y b, la existencia de tantos lenguajes obedece a que cada uno de ellos está encaminado a resolver ciertas tareas, dentro de la amplia problemática de la explotación de la información, o bien, a que su arquitectura, o su forma de llevar a cabo la programación, tiene un enfoque particular.

Page 12: Software aplicado 2

ejemplo las estructuras básicas de programación

Construir un algoritmo tal, que dado como dato la calificación de un alumno en un examen, escriba "Aprobado" en caso que esa calificación fuese mayor que 8.Salidas: mensaje de aprobado si se cumple la condición.Entradas: calificación

Datos adicionales: un alumno aprueba si la calificación es mayor que 8Variables:Cal = calificaciónAlgoritmo:InicioLeer (cal)Si cal > 8 entoncesEscribir ("aprobado")Fin_siFin

Page 13: Software aplicado 2

If-Then-Else

La estructura IF-ELSE permite establecer una bifurcación o alternativa dentro de una secuencia de órdenes. Es decir, en ocasiones es posible que deseemos que el programa ejecute una instrucción o instrucciones, pero solo si se cumple determinada circunstancia, y, en caso contrario, o bien no hacer nada, o bien ejecutar otras instrucciones diferentes.

Por ejemplo, queremos hacer un alias que a intervalos de un minuto mida nuestro lag, y solo si este supera los 15 segundos nos envíe un mensaje a la pantalla de Status avisándonos de cuanto lag tenemos. Esto no es posible hacerlo mediante una secuencia lineal de instrucciones; es preciso que el programa discierna en algún momento si procede o no ejecutar la orden de imprimir un mensaje. Esta posibilidad es la que nos facilita la estructura IF.

En definitiva, IF comparará valores, y ejecutará o no diferentes instrucciones, en función del resultado de la comparativa.

Si ( pasa esto ) { Haz esto } La del else if equivaldrá a: En caso contrario, si ( pasa esto ) { Haz esto }.

Page 14: Software aplicado 2

La estructura de decisión SELECT CASE se incluye en Fortran 90 para reemplazar el GOTO calculado en el Fortran 77 para la selección de una de varias opciones posibles. Esta estructura representa una alternativa para la escritura de decisiones aninadas. Por ejemplo:

INTEGER :: A ! Variable de selccion SELECT CASE(A) ! Estructura de seleccion CASE(1) CALL METODO1 ! Llamada del metodo 1 para

opcion 1 CASE(2) CALL METODO2 ! Llamada del metodo 2 para

opcion 2 CASE(3..5) CALL METODO3(A) ! Llamada del metodo 3

para opcion 3, 4 y 5 CASE DEFAULT PRINT*, 'Opcion fuera del rango' ! mensaje

de error END SELECT

Page 15: Software aplicado 2

La estructura for sirve para repetir un código dependiendo de un contador. Veamos un ejemplo:

int contador;

for (contador = 1; contador<=10; contador++){

printf(“Repetición numero %d\n”, contador);};

Page 16: Software aplicado 2

While: Esta estructura de repetición le permite al programador especificar las veces que se repita una acción mientras una condición se mantenga verdadera

ejemplo para ver funcionar la estructura de repetición while:

int num;

num = 0;while (num<=10){

printf(“Repetición numero %d\n”, num);num = num + 1;

};

El código anterior imprimirá en pantalla:

Repetición numero 0Repetición numero 1Repetición numero 2Repetición numero 3Repetición numero 4Repetición numero 5Repetición numero 6Repetición numero 7Repetición numero 8Repetición numero 9Repetición numero 10

Page 17: Software aplicado 2

Ejecuta las sentencias comprendidas entre las palabras reservadas REPEAT y UNTIL hasta que la expresión o variable sea verdadera.

Formato:REPEAT begin (Sentencia); (Sentencia); ... end; UNTIL condición;

Características del bucle REPEAT: Se ejecutan siempre una vez, por lo menos, y la

terminación del bucle se produce cuando el valor de la expresión lógica o condición de salida es verdadera. Se ejecuta hasta que la expresión es verdadera, es decir, se ejecuta mientras la expresión sea falsa.