separata i unidad

16
Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 1 CURSO DE LENGUAJES DE PROGRAMACION UNIDAD I: INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN. ELEMENTOS Y CONCEPTOS FUNDAMENTALES Computación e Informática (¿Que es la Computación?) La Computación es la disciplina que busca establecer una base científica para resolver problemas mediante el uso de dispositivos electrónicos y sistemas computacionales. La Computación es el estudio de métodos algorítmicos para representar y transformar la información, incluyendo su teoría, diseño, implementación, aplicación y eficiencia. Las raíces de la computación e informática se extienden profundamente en la matemática y la ingeniería. La matemática imparte el análisis del campo y la ingeniería imparte el diseño. La Computación se define como el conjunto de conocimientos científicos y técnicos (bases teóricas, métodos, metodologías, técnicas, y tecnologías) que hacen posible el procesamiento automático de los datos mediante el uso de computadores, para producir información útil y significativa para el usuario. La Computación e Informática es la ciencia del tratamiento automático de la información mediante un computador (llamado también ordenador o computadora). El concepto fundamental de la Computación es el concepto de ALGORITMO. Diferencia entre Computación e Informática Informática es un vocablo inspirado en el francés informatique, formado a su vez por la conjunción de las palabras información y automatique, para dar idea de la automatización de la información que se logra con los sistemas computacionales. Esta palabra (Informática) se usa principalmente en España y Europa. Computación se usa sobre todo en América y proviene de cómputo (o cálculo). Desde el punto de vista de las ciencias de la computación, el elemento físico utilizado para el tratamiento de la información es la computadora. Computadora: Computadora es una maquina compuesta de elementos físicos, en su

Upload: jaime-amambal-zambrano

Post on 14-Aug-2015

40 views

Category:

Education


0 download

TRANSCRIPT

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 1

CURSO DE LENGUAJES DE PROGRAMACION

UNIDAD I: INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN.

ELEMENTOS Y CONCEPTOS FUNDAMENTALES

Computación e Informática (¿Que es la Computación?)

• La Computación es la disciplina que busca establecer una base científica para resolver problemas mediante el uso de dispositivos electrónicos y sistemas computacionales.

• La Computación es el estudio de métodos algorítmicos para representar y transformar la información, incluyendo su teoría, diseño, implementación, aplicación y eficiencia. Las raíces de la computación e informática se extienden profundamente en la matemática y la ingeniería. La matemática imparte el análisis del campo y la ingeniería imparte el diseño.

• La Computación se define como el conjunto de conocimientos científicos y técnicos (bases teóricas, métodos, metodologías, técnicas, y tecnologías) que hacen posible el procesamiento automático de los datos mediante el uso de computadores, para producir información útil y significativa para el usuario.

• La Computación e Informática es la ciencia del tratamiento automático de la información mediante un computador (llamado también ordenador o computadora).

• El concepto fundamental de la Computación es el concepto de ALGORITMO.

Diferencia entre Computación e Informática

Informática es un vocablo inspirado en el francés informatique, formado a su vez por la conjunción de las palabras información y automatique, para dar idea de la automatización de la información que se logra con los sistemas computacionales.

Esta palabra (Informática) se usa principalmente en España y Europa. Computación se usa sobre todo en América y proviene de cómputo (o cálculo).

Desde el punto de vista de las ciencias de la computación, el elemento físico utilizado para el tratamiento de la información es la computadora.

Computadora: Computadora es una maquina compuesta de elementos físicos, en su

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 2

mayoría de origen electrónico, capaz de realizar una gran variedad de trabajos a gran velocidad y con gran precisión, siempre y cuando se le den las instrucciones adecuadas.

Programa: Un programa es el conjunto de órdenes que se le dan a una computadora, para realizar un proceso determinado

Aplicación informática: es el conjunto de uno o varios programas más la documentación correspondiente para realizar un determinado trabajo.

Sistema informático: El término sistema informático se utiliza para nombrar al conjunto de elementos necesarios (computadora, terminales, impresoras, etc.) Para la realización y explotación de aplicaciones informáticas.

Para que la información sea tratada necesita transmitirse o trasladarse de un lugar a otro, y para que exista transmisión de información son necesarios tres elementos:

• Emisor: Es lo que da origen a la información

• Medio: Es lo que permite que se transmita la información

• Receptor: Es lo que recibe la información

Ejemplo:

Ondas de sonido

Tratamiento de la información: es el conjunto de operaciones que se realizan sobre una información.

Considere el siguiente esquema;

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 3

En términos generales se le denomina entrada al conjunto de operaciones cuya misión es tomar los datos del exterior y enviarlos a la computadora; para ello en ocasiones es necesario realizar operaciones de validación o depuración de los mismos. Estos datos deben de quedar en la memoria de la computadora para su posterior tratamiento.

Al conjunto de operaciones que elaboran los datos de entrada para obtener los resultados de salida se le llama proceso o algoritmo, y consiste generalmente en una combinación adecuada de operaciones de origen aritmético y test de tipo lógico.

Por último se le denomina salida al conjunto de operaciones que proporcionan los resultados de un proceso a las personas correspondientes. Se engloban en la salida también aquellas operaciones que dan forma a los resultados y los distribuyen adecuadamente.

Automatización de un problema.

La automatización de un problema para que pueda ser desarrollado por una computadora se muestra en el siguiente esquema:

Pilares básicos de la computación.

• El elemento físico (Hardware)

• El elemento lógico (Software)

• El elemento humano (personal informático)

Esquema básico del elemento físico (Hardware) El hardware es el elemento físico de un sistema computacional, es decir, todos los

materiales que lo componen, como la propia computadora, los dispositivos externos, los cables, los soportes de información y en definitiva todos aquellos elementos que tienen entidad física. Considere el siguiente esquema:

Unidad central de proceso. Es el elemento principal o centro neurálgico de una computadora y su misión consiste en coordinar y realizar todas las operaciones del sistema informático. Consta de los siguientes elementos:

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 4

• Procesador. Es el elemento encargado del control y ejecución de las

operaciones y está formador por: • Unidad de control. Es la parte del procesador encargada de gobernar el resto

de las unidades, además de interpretar y ejecutar las instrucciones controlando su secuencia

• Unidad aritmética – lógica. Es la parte del procesador encargada de realizar todas las operaciones elementales de tipo aritmético y lógico.

• Memoria central. También denominada memoria interna o principal, es el elemento de la unidad central de proceso encargado de almacenar los programas y los datos necesarios para que el sistema informático realice un determinado trabajo. Es importante decir que para que un programa pueda ser ejecutado en una computadora tiene que estar en ésta memoria, así como los datos que necesiten ser procesados en ese momento.

Elementos de entrada. También llamados periféricos o unidades de entrada, son los dispositivos encargados de introducir los datos y los programas desde el exterior a la memoria central para su utilización. Estos dispositivos, además de recibir la información del exterior, la preparan para que la máquina pueda entenderla de forma correcta.

Memoria auxiliar. Son los dispositivos de almacenamiento masivo de información que se utilizan para guardar datos y programas en el tiempo para su posterior utilización. La característica principal de los soportes que manejan estos dispositivos es la de retener la información a lo largo del tiempo.

Elementos de salida. Son aquellos dispositivos cuya misión es recoger y proporcionar al exterior los datos de salida o resultados de los procesos que se realicen en el sistema informático. También se denominan periféricos o unidades de salida.

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 5

Esquema básico del elemento lógico (software)

El software es la parte lógica que dota al equipo físico de capacidad para realizar cualquier tipo de trabajos.

Tiene su origen en ideas y procesos desarrollados por el elemento humano, plasmadas sobre un soporte determinado del hardware y bajo cuya dirección trabaja siempre la computadora. Considere el siguiente esquema:

Software

Ideas

Datos o informaciones

Conjunto de órdenes

Un elemento lógico, para estar presente en un sistema informático, debe almacenarse en un soporte físico. Estos soportes son los siguientes:

• Memoria central

• Memoria auxiliar

El elemento lógico de un sistema informático puede clasificarse como aparece representado en el siguiente esquema:

El software básico es el conjunto de programas que el equipo físico necesita para tener la capacidad de trabajar. Estos programas en su conjunto configuran lo que se denomina sistema operativo.

Sistema operativo: Es el soporte lógico que controla el funcionamiento del equipo físico, ocultando los detalles del hardware y haciendo sencillo el uso de la computadora.

Considere el siguiente esquema

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 6

Esquema básico del elemento humano

El elemento humano es el más importante de los que constituyen la informática. Sin personas estas máquinas serían totalmente inútiles.

El elemento humano, denominado comúnmente personal informático, es el conjunto de personas que desarrollan las distintas funciones relacionadas con el uso de las computadoras. En general, se denomina usuario, a la persona que utiliza en última instancia la computadora y el software de aplicación como herramienta para desarrollar su trabajo o ayudarse en su actividad. Considere el siguiente esquema

TIPOS DE COMPUTADORAS

Las computadoras se pueden clasificar en dos tipos desde el punto de vista de construcción, capaces de ejecutar algoritmos:

- Maquinas con lógica cableada - Maquinas con lógica programada

En base su potencia de cálculo y capacidad de almacenamiento las computadoras se pueden clasificar en:

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 7

• Supercomputadoras

• Minicomputadoras

• Servidores

• Estaciones de Trabajo

• Microcomputadoras

A continuación se describen las principales características de cada uno de estos tipos de computadoras.

Supercomputadora.- Es la computadora más rápida. Las supercomputadoras son muy caras y son empleadas en aplicaciones especializadas que requieren una inmensa cantidad de cálculos matemáticos. Por ejemplo, las predicciones del tiempo requieren una supercomputadora. Otros usos de las supercomputadoras son la animación gráfica, la investigación en energía nuclear, la explotación petrolera etc. La diferencia principal entre una supercomputadora y un servidor es que una supercomputadora canaliza todo su poder en ejecutar unos cuantos programas tan rápido como sea posible, mientras que un servidor usa todo su poder en ejecutar muchos programas en forma concurrente.

Minicomputadora.- Es una computadora de tamaño medio. En tamaño y en potencia, una minicomputadora se sitúa entre una estación de trabajo y un servidor. En general una minicomputadora es un sistema multiprocesamiento capaz de suportar desde 4 hasta 200 usuarios en forma simultánea.

Servidor.- Es una computadora muy cara y grande capaz de atender a cientos o quizás miles de usuarios en forma simultánea. En la jerarquía que inicia con un simple microprocesador (por ejemplo, en los relojes) en lo más alto están las supercomputadoras y por debajo se encuentran los servidores. De alguna manera, los servidores son más poderosos que las supercomputadoras debido a que ellos soportan en forma simultánea más programas. Pero las supercomputadoras pueden ejecutar los programas en forma más rápida que un servidor. La diferencia entre pequeños servidores y las minicomputadoras es ambigua, dependiente en realidad de cómo el fabricante quiere vender sus computadoras.

Estación de trabajo.- Es un tipo de computadora utilizada para aplicaciones de ingeniería, publicaciones, desarrollo de software y otras aplicaciones en las cuales se requiere una cierta capacidad de cómputo además de grandes capacidades gráficas. Las estaciones de trabajo en forma general vienen con una pantalla de alta resolución gráfica, al menos 64 MB de RAM, incorporando soporte de red, y una interface gráfica. El sistema operativo más común para las estaciones de trabajo es UNIX y windows. En términos de potencia de cálculo las estaciones de trabajo se encuentran entre las computadoras

personales y las minicomputadoras. Como computadoras personales, la mayoría de las estaciones de trabajo son para un solo usuario.

Microcomputadora (Computadora personal).- Es una computadora relativamente barata diseñada para usuarios individuales. Todas las microcomputadoras están basadas en la tecnología del microprocesador que permite diseñarlas y ponerlas en un solo microprocesador. Las microcomputadoras se utilizan en los negocios como procesadores

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 8

de texto, procesos contables, diseño gráfico, hojas electrónicas, bases de datos, etc. En el hogar su uso es cada vez mayor.

REPRESENTACION DE LA INFORMACION

En las computadoras, la información se representa en el sistema binario. En este sistema, los números se representan como potencias de 2. Cada cifra toma el valor de 0 o 1. Ejemplo: El número 6 en notación binaria: 6 = 110

Para convertir de notación binaria a decimal: 110 = 1 x 22 + 1x21 + 0 x 20 = 6

Sistema binario

Bit: unidad mínima de información. Puede tomar valores de 0 o 1.

Con N Bits se pueden formar 2N números, entre 0 y 2N-1.

Byte: es un conjunto ordenado de 8 bits.

Palabra: es un número de bytes que pueden ser manejados por la unidad de control de la

computadora, de una sola vez.

KByte (kilobyte) = 1024 bytes

MByte (megabyte) = 1024 KBytes

GByte (gigabyte) = 1024 Mbytes.

TByte (terabyte) = 1024 GBytes

PByte (petabyte) = 1024 TBytes

EByte (exabyte) = 1024 PBytes

ZByte (zettabyte) = 1024 EBytes

YByte (yottabyte) = 1024 ZBytes

Componentes de un sistema de computación 1. Hardware (CPU, memoria y dispositivos de entrada y salida) 2. Programas de aplicación: procesadores de texto, hojas de cálculo, compiladores, correo electrónico, navegadores, etc. 3. Sistema operativo:

• Es un programa que gestiona el hardware: o Gestiona la memoria. o Gestiona los archivos. o Gestiona las operaciones de entrada/salida.

• Proporciona la base para que se puedan ejecutar los programas de aplicación.

• Sirve como intermediario entre el usuario y el hardware.

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 9

Lenguaje de Programación

Es un conjunto de normas lingüísticas que permiten escribir un programa con

instrucciones que sean entendidas por la computadora. Un lenguaje de programación es una notación para escribir programas. Un lenguaje de programación permite al usuario crear programas que serán entendidos

por el computador (directa o indirectamente) con el objetivo de realizar alguna tarea. Todo lenguaje de programación tiene:

• Un alfabeto: que son los elementos léxicos permitidos • Una Sintaxis: que indica cómo se construyen las frases del lenguaje • Una Semántica: que indica el significado de las frases formadas.

Programa

Es un conjunto de instrucciones escritas en un lenguaje de programación susceptibles de ser ejecutadas por la computadora.

Programa = conjunto de datos + algoritmos

Datos: conjunto de valores.

Algoritmo: Secuencia de pasos a seguir para resolver un problema

Dijkstra (1972) “El arte de la programación es el arte de organizar la complejidad” “Debemos organizar los cálculos de manera que nuestros limitados sentidos sean

suficientes para garantizar que el cómputo arroje los resultados esperados”

Los lenguajes de programación proporcionan estructuras llamadas constructores para organizar los cálculos. El lenguaje debe ayudarnos a escribir buenos programas: un programa es bueno si es fácil de leer, fácil de entender y fácil de modificar. Lógicamente además de resolver el problema deseado.

Clasificación

A grandes rasgos podemos clasificar los lenguajes de programación en tres categorías: lenguaje máquina, de bajo nivel (ensamblador) y de alto nivel.

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 10

Lenguaje máquina

Los lenguajes máquina son aquellos cuyas instrucciones son directamente entendibles por el computador sin la necesidad de traducción alguna. Sus instrucciones no son más que conjuntos de ceros y unos (bits). Estas especifican la operación a realizar, los registros del procesador y celdas de memoria implicados, etc. Estos lenguajes son dependientes de la máquina. Obviamente, este tipo de lenguajes serán fáciles de comprender para un computador pero

muy difíciles para el hombre.

Lenguajes de bajo nivel (ensamblador) La programación en lenguaje máquina es difícil, por ello se necesitan lenguajes que permitan simplificar este proceso. Los lenguajes de bajo nivel han sido diseñados para este fin. Estos lenguajes son generalmente dependientes de la máquina, es decir, dependen de un conjunto de instrucciones específicas del computador. Un ejemplo de este tipo de lenguajes es el ensamblador. En él, las instrucciones se escriben en códigos alfabéticos conocidos como mnemotécnicos (generalmente, abreviaturas de palabras inglesas). Las palabras mnemotécnicas son mucho más fáciles de recordar que las secuencias de ceros y unos. Una instrucción típica de ensamblador puede ser:

ADD x,y,z

Esta instrucción significaría que se deben sumar los números almacenados en las direcciones de memoria x e y, y almacenar el resultado en la dirección z. Pero aún así, a medida que los programas crezcan en tamaño y complejidad, el ensamblador sigue sin ser una buena solución.

Lenguajes de alto nivel Los lenguajes de alto nivel son aquellos en los que las instrucciones o sentencias son escritas con palabras similares a las de los lenguajes humanos (en la mayoría de los casos, el Inglés). Esto facilita la escritura y comprensión del código al programador. Estos lenguajes permiten escribir programas portables y legibles. Existen muchos lenguajes de alto nivel, por citar algunos: ADA, BASIC, COBOL, FORTRAN, C , C++, Modula-2, Lisp, Prolog, Pascal, Java, Php, html, xml , etc. A continuación se presenta una instrucción de java:

if (x == y) System.out.println ('Esto es una prueba');

Si se tienen unos conocimientos mínimos del Inglés, esta línea tiene una comprensión muy fácil: "Si el contenido de x es igual al contenido de y”, entonces se escribe Esto es una prueba". Los programas escritos en lenguaje de alto nivel no son entendibles directamente por la máquina. Necesitan ser traducidos a instrucciones en lenguaje máquina que entiendan los computadores. Los programas que realizan esta traducción se llaman compiladores, y los programas escritos en lenguajes de alto nivel se denominan programas fuente.

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 11

Programas fuente y objeto

Un programa puede ser definido como un conjunto de instrucciones que pueden

someterse como unidad a un computador y utilizarse para dirigir el comportamiento de

éste.

Un programa fuente es aquel que nos permite escribir un algoritmo mediante un lenguaje formal. Por eso al código desarrollado al programar se le llama código fuente. Un programa objeto es el resultado de traducir un programa fuente para obtener un lenguaje comprensible por la máquina.

Traductores de programas

Los traductores son un tipo de programas cuya función es convertir el código de un lenguaje en otro. Por ejemplo un compilador, que traduce código fuente en código objeto. Existen distintos tipos de traductores, entre ellos destacan:

• Ensambladores • Preprocesadores • Intérpretes • Compiladores

Ensambladores

Es un tipo de traductor que convierte programas escritos en lenguaje ensamblador en

programas escritos en código máquina.

Preprocesadores

Traduce un lenguaje de alto nivel a otro, cuando el primero no puede pasar a lenguaje máquina directamente.

Intérpretes

Se trata de traductores-ejecutores ya que con cada instrucción realizan un proceso triple de lectura-traducción-ejecución. Son relativamente lentos, pero muy buenos para la depuración de programas.

Compiladores

Es el tipo de traductor más conocido. Se trata de un programa que traduce código fuente escrito en un lenguaje de alto nivel (java) en código máquina (no siempre). Son más rápidos que los intérpretes pero presentan mayor dificultad a la hora de detectar errores.

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 12

Figura 3: Representación del proceso de traducción de lenguaje de alto nivel a lenguaje

máquina.

Para que aprender un lenguaje de Programación?

El objetivo de aprender un lenguaje de programación, es poder utilizar la computadora como una herramienta para resolver problemas, de diversos tipos. Para esto, de manera general y muy simple, la resolución de un problema se puede dividir en 3 etapas:

• Análisis del Problema. • Diseño de un algoritmo. • Elaboración de un programa para computadora.

Análisis del Problema: Exige la lectura previa del problema, las veces que sean necesarias, a fin de tener una idea general de lo que se solicita. El problema debe ser definido y comprendido claramente. Se debe definir cuales son las entradas que se requieren y las salidas que se desean obtener.

El análisis debe permitir saber: - Qué información debe proporcionar la resolución del problema?. - Qué datos se necesitan para resolver el problema?. - Con qué datos se cuenta?

Luego del análisis se puede pasar a la siguiente etapa: La elaboración de un Algoritmo.

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 13

Diseño de un Algoritmo: Un algoritmo es un método o conjunto de reglas (sin ambigüedades) que se aplican paso a paso en forma ordenada para solucionar un problema.

Características de un Algoritmo: • Debe ser preciso: es decir debe indicar el orden exacto de realización de cada

etapa, evitando acciones innecesarias. • Debe estar definido: significa que si se ejecuta un algoritmo 2 o más veces, con los

mismos valores iniciales, se debe obtener el mismo resultado todas las veces. • Debe ser finito: esto significa que si se sigue un algoritmo, se debe terminar en

algún momento, es decir, debe tener un número finito de pasos. • Debe tener un único punto de entrada o inicio y uno de salida o fin. • Todas las etapas o pasos a seguir son ejecutables. • Deben ser NO AMBIGUOS. De manera general, en un algoritmo se deben definir

claramente las siguientes partes: o Inicialización de variables. o Entrada de datos. o Procesos a seguir. o Salida de resultados.

Para expresar un algoritmo hay que realizar una descripción paso a paso, en lenguaje natural del citado algoritmo.

Hay que recordar que las reglas del algoritmo deben seguir una secuencia bien definida de pasos hasta que se obtenga un resultado y que sólo pueda ejecutarse una operación a la vez.

El empleo de indentación (justificación o sangrado) en la escritura de los algoritmos facilita su lectura y comprensión.

Otro aspecto a considerar es el método elegido para representar los algoritmos: - Diagramas de Flujo (convencional) - Pseudocódigo - Diagramas de Flujo Estructurado (Nassi-Schneiderman o N-S).

Elaboración de un Programa para Computadora: Después que el algoritmo se ha diseñado y representado gráficamente mediante alguno de los métodos indicados anteriormente, se debe elaborar un programa para computadora, utilizando algún lenguaje de programación. Esta fase se denomina Programación y consta de las siguientes partes:

a) Codificación: Es el proceso de convertir un algoritmo a un programa, escrito en un lenguaje de programación. La codificación requiere el uso de un programa editor que permita crear los programas a las que se denomina Programas Fuente.

b) Compilación y Ejecución: Una vez que se ha escrito el programa fuente, se debe traducir a lenguaje máquina, para obtener el correspondiente programa objeto, que es el que ejecuta la computadora. Si durante la traducción se detectan errores de sintaxis, el compilador informa al usuario cuáles son y cual es su posible ubicación.

c) Depuración: Es el proceso de localizar y corregir errores. Existen 3 posibles tipos

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 14

de errores cuando se ejecuta un programa: 1. Errores de Sintaxis: Se generan por el uso incorrecto de las reglas de sintaxis

del lenguaje de programación. El compilador informa al programador acerca de la existencia de estos errores.

2. Errores de Ejecución: Se producen por instrucciones que el computador entiende pero que no puede ejecutar. Por ejemplo una división por cero, sacar la raíz cuadrada de un número negativo, almacenar un dato en una zona prohibida de memoria, etc.

3. Errores Lógicos: Ocurren cuando se le da a la computadora una secuencia incorrecta de instrucciones, aunque cada instrucción pueda ejecutarse sin ningún problema. Estos errores son los más difíciles de ubicar.

d) Verificación: Consiste examinar lo que hace un programa, cómo lo hace. Constatar si efectivamente hace lo que se desea, y si no lo hace, entonces determinar las causas por las que falta.

e) Optimización: Cuando se consigue hace funcionar correctamente un programa, el paso siguiente es perfeccionarlo para que funcione mejor. La optimización es una etapa de refinamiento, que puede incluir: eliminar instrucciones innecesarias, hacer mejores presentaciones de reportes, etc.

f) Documentación: La documentación sirve para describir lo que hace un programa, como fue construido, para qué sirven determinadas variables o bloques de instrucciones y como tiene que ser utilizado. Una buena documentación ayuda a comprender, mejorar y modificar los programas. Puede ser interna, mediante la inclusión de comentarios en el programa o puede ser externa.

g) Mantenimiento: Se denomina así al proceso de actualización continua de un programa, con la realización de cambios que sean considerados necesarios.

NOTA

Nosotros en nuestra vida diaria, estamos siempre resolviendo problemas o situaciones que se nos presentan a cada momento y al hacer esto, estamos ejecutando un conjunto de pasos que seguimos de manera ordenada, es decir estamos elaborando algoritmos, aún sin saberlo o estar conscientes de ello.

Algunos ejemplos de problemas de la vida diaria pueden ser: Tomar una taza de Té, ver una película, tomar un jugo de naranja, tomar un baño, ir a la universidad, tomar desayuno, comprar un periódico, comprar una medicina, etc.

A continuación se muestran los pasos que siguen algunos alumnos para resolver algunos de estos problemas:

Problema: Tomar una taza de té

1. Dirigirse a la cocina. 2. Coger la taza. 3. Echar en la taza un poco de agua hervida. 4. Si es que no hay agua caliente hervir un poco. 5. Servir en la taza el agua hervida. 6. Escoger la infusión que se desea tomar. 7. Introducir la infusión en la taza. 8. Agregar el azúcar (la cantidad que se desee). 9. Finalmente beber el Te.

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 15

Problema: Tomar desayuno

1. Voy a comprar pan a la panadería

2. Regreso a mi casa 3. Abro un tarro de leche 4. Tomo una taza y vierto la leche en ella 5. Le agrego agua caliente 6. Lo endulzo a mi gusto 7. Espero a que enfríe 8. Tomo un pan y lo abro por la mitad 9. Le echo mantequilla

10. Tomo la leche junto con el pan Problema: Ir a la Universidad

1. Me despierto 2. Salgo de mi cama 3. Me dirijo al baño 4. M lavo 5. Tomo el desayuno que está preparado 6. Me lavo los dientes 7. Me cambio 8. Cojo mis cosas cuaderno 9. Tomo el trasporte

10. Llego a la universidad Problema: Tomar un jugo de naranja

1. Ir a la tienda. 2. Compro naranjas. 3. Lavo las naranjas. 4. Las corto en mitades 5. Exprimir las naranjas en un vaso 6. Separar las semillas

7. Agregarle agua 8. Agregarle azúcar al gusto

9. Tomo el jugo

Problema: Tomar un jugo de naranja

1. Ir a la tienda 2. Preguntar si tiene jugo de naranja 3. Si tiene entonces pido un jugo 4. Pago por el jugo 5. Si tengo vuelto espero sino vuelvo a mi casa 6. Tomo el jugo

Universidad Nacional de Cajamarca Escuela Académico Profesional de Ingeniería Hidráulica

Curso de Lenguajes de Programación - Ing. Karim Ivette Cruzado Villar. Página 16

Problema: Tomar un jugo de naranja

1. Voy a la cocina

2. Abro la refrigeradora

3. Saco una botella de jugo de naranja

4. Abro la botella

5. Vierto el contenido en un vaso

6. Tomo el jugo de naranja

Problema: Ver una película

1. Conseguir dinero para ir al cine

2. Ir al cine

3. Escoger la película que quiero ver 4. Pagar por el boleto de entrada

5. Recoger el boleto

6. Entrar al cine

7. Ver la película

Problema: Ver una película

1. Ir a la tienda donde alquilan películas

2. Preguntar si tiene la película que deseo

3. Si tiene entonces pido la película

4. Pago por el alquiler 5. Si tengo vuelto espero sino vuelvo a mi casa 6. Prendo la tv 7. Conecto el dvd 8. Veo la película 9. Problema: ver una película. 10. Buscar la guía de cable ver que películas dan el día de hoy y la respectiva hora y

canal. 11. Escoger la película que quiero ver a la hora indicada prender la TV colocar la TV

en el canal adecuado 12. Ver la película

Problema: comprar un periódico 1. Ir al puesto de periódicos

2. Preguntar por el periódico que deseo

3. Si tiene el periódico entonces pago

4. Sino voy a otro puesto. 5. Si encuentro el periódico pago por él 6. Si tengo vuelto lo recibo 7. Recoger el periódico 8. Regresar a mi casa

http://download.java.net/jdk7/