Desarrollo Del Modulo (2 Unidad).

42
FUNDAMENTOS DE PROGRAMACION CORPORACIÓN IBEROAMERICANA DE CIENCIA Y TECNOLOGIA CIBERCTEC MÓDULO FUNDAMENTOS DE PROGRAMACION SEGUNDA UNIDAD HERRAMIENTA DE PROGRAMACION AUTORES: Grupo Interdisciplinario Ingenieros de Sistemas 36 Corporacion Iberoamerica de Ciencia y Tecnologia CIBERCTEC SAS

Transcript of Desarrollo Del Modulo (2 Unidad).

Page 1: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

CORPORACIÓN IBEROAMERICANA DE CIENCIA Y TECNOLOGIA CIBERCTEC

MÓDULO FUNDAMENTOS DE PROGRAMACION

SEGUNDA UNIDADHERRAMIENTA DE PROGRAMACION

AUTORES:Grupo Interdisciplinario Ingenieros de Sistemas

VILLAVICENCIO 2012

36C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 2: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

TABLA DE CONTENIDO

PAG

SEGUNDA UNIDAD: HERRAMIENTAS DE PROGRAMACION............................39

OBJETIVO.............................................................................................................40

OBJETIVO GENERAL.....................................................................................................40

OBJETIVOS ESPECÍFICOS...........................................................................................40

PRUEBA INICIAL............................................................................................................40

4. TEMA 1: DESARROLLO DE PSEUDOCÓDIGO Y DIAGRAMA DE FLUJO....40

5. TEMA 2: LA PROGRAMACIÓN........................................................................46

5.1 EL PROBLEMA.........................................................................................................46

5.2 UN PROGRAMA.......................................................................................................46

5.3 LENGUAJES DE PROGRAMACION........................................................................46

5.3.1 CARACTERISTICAS DEL LENGUAJE JAVA....................................................48

5.3.2 ENTORNOS INTEGRADOS DE DESARROLLO...............................................48

5.3.3 INSTALACION DE LOS IDE’S............................................................................49

5.3.4 Instalación de Jcreator....................................................................................49

6.TEMA 3: ENTRADA Y SALIDA DE DATOS......................................................58

6.1 CLASES UTILIZADAS PARA LA ENTRADA DE DATOS.........................................58

6.2 Paquete Swing.........................................................................................................63

37C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 3: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

Diseñar programas bajo diagramas de flujo asistido por computador. Implementar diagramas de flujo en lenguajes de programación.

SEGUNDA UNIDAD: HERRAMIENTAS DE PROGRAMACION

En ciencias de la computación, y análisis numérico el pseudocódigo (o falso lenguaje) es una descripción de un algoritmo informático de programación de alto nivel compacto e informal que utiliza las convenciones estructurales de un lenguaje de programación verdadero, pero que está diseñado para la lectura humana en lugar de la lectura en máquina, y con independencia de cualquier otro lenguaje de programación. Normalmente, el pseudocódigo omite detalles que no son esenciales para la comprensión humana del algoritmo, tales como declaraciones de variables, código específico del sistema y algunas subrutinas.

El lenguaje de programación se complementa, donde sea conveniente, con descripciones detalladas en lenguaje natural, o con notación matemática compacta. Se utiliza pseudocódigo pues este es más fácil de entender para las personas que el código de lenguaje de programación convencional, ya que es una descripción eficiente y con un entorno independiente de los principios fundamentales de un algoritmo. Se utiliza comúnmente en los libros de texto y publicaciones científicas que se documentan varios algoritmos, y también en la planificación del desarrollo de programas informáticos, para esbozar la estructura del programa antes de realizar la codificación efectivamente. No existe una sintaxis estándar para el pseudocódigo, aunque los cuatro programas que manejan pseudocódigo tengan su sintaxis propia. Aunque sea parecido, el pseudocódigo no debe confundirse con los programas esqueleto que incluyen código ficticio, que pueden ser compilados sin errores. Aunque los diagramas de flujo y UML sean más amplios en el papel, pueden ser considerados como una alternativa gráfica al pseudocódigo.

38C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 4: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

OBJETIVO

OBJETIVO GENERAL

Identificar y comprender la terminología básica del entorno en el que trabaja Java e instalar entornos de desarrollo en el computador para poder aplicar los diferentes tipos de variables en la codificación de programas.

OBJETIVOS ESPECÍFICOS

Define el problema e identifica su importancia en el contexto de la programación.

Identifica y define tipos de datos, variables y constantes, lenguajes de programación y Java como un lenguaje de programación.

Reconoce la importancia de los Entornos Integrados de Desarrollo. Instala Entornos integrados de Desarrollo.

PRUEBA INICIAL

a. Realizar un algoritmo que permita leer dos valores, determinar cuál de los dos valores es el menor y escríbalo

b. Realizar un algoritmo que sume dos números.

39C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 5: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

4. TEMA 1: DESARROLLO DE PSEUDOCÓDIGO Y DIAGRAMA DE FLUJO

En ciencias de la computación, y análisis numérico el pseudocódigo (o falso lenguaje) es una descripción de un algoritmo informático de programación de alto nivel compacto e informal que utiliza las convenciones estructurales de un lenguaje de programación verdadero, pero que está diseñado para la lectura humana en lugar de la lectura en máquina, y con independencia de cualquier otro lenguaje de programación. Normalmente, el pseudocódigo omite detalles que no son esenciales para la comprensión humana del algoritmo, tales como declaraciones de variables, código específico del sistema y algunas subrutinas.

El lenguaje de programación se complementa, donde sea conveniente, con descripciones detalladas en lenguaje natural, o con notación matemática compacta. Se utiliza pseudocódigo pues este es más fácil de entender para las personas que el código de lenguaje de programación convencional, ya que es una descripción eficiente y con un entorno independiente de los principios fundamentales de un algoritmo. Se utiliza comúnmente en los libros de texto y publicaciones científicas que se documentan varios algoritmos, y también en la planificación del desarrollo de programas informáticos, para esbozar la estructura del programa antes de realizar la codificación efectivamente.

No existe una sintaxis estándar para el pseudocódigo, aunque los cincos IDE's que manejan pseudocódigo tengan su sintaxis propia. Aunque sea parecido, el pseudocódigo no debe confundirse con los programas esqueleto que incluyen código ficticio, que pueden ser compilados sin errores. Los diagramas de flujo y UML pueden ser considerados como una alternativa gráfica al pseudocódigo, aunque sean más amplios en papel.

Comenzamos por recordar algunos conceptos básicos en el proceso de diagramación de la información:

PARA QUE SIRVE EL DFD?

El Dfd es un software que sirve para construir, realizar y analizar todo tipo de algoritmos con base a unos diagramas de flujo.

QUE ES UN ALGORITMO?

Es un procedimiento para el desarrollo o resolución de cualquier tipo de problemas de programación, llevando así una secuencia de pasos simples.

QUE ES EL DIAGRAMA DE FLUJO?

El diagrama de flujo son figuras conectadas por medio de flechas que van

40C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 6: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

entre lazados por unos procedimientos a seguir, para la ejecución y resolución de problemas.

REGLAS DE LOS DIAGRAMAS DE FLUJO

a. Debe de indicar claramente dónde inicia y dónde termina el diagrama. b. Cualquier camino del diagrama debe de llevarte siempre a la terminal de fin. c. Organizar los símbolos de tal forma que siga visualmente el flujo de arriba

hacia abajo y de izquierda a derecha. d. No usar lenguaje de programación dentro de los símbolos. e. Centrar el diagrama en la página. f. Las líneas deben ser verticales u horizontales, nunca diagonales.

3.1.1 EJERCICIOS DEL TEMA

Al final de la unidad anterior, se observó la herramienta DFD, la cual nos permite desarrollar los diferentes diagramas de flujo con el fin de determinar si están bien analizados. A continuación desarrollaremos algunos ejemplos con el fin de determinar el pseudocódigo y el diagrama de Flujo en el programa DFD.

Desarrolle un algoritmo que permita leer un valor cualquiera N y escriba si dicho número es par o impar.

Pseucódigo

1. Inicio2. Declaración de variables: N3. Leer un número4. Asignarlo a la variable N5. Si el residuo de dividir a N entre 2 es igual a cero6. Si es Si: Entonces: Escribir “Es par”7. Sino: Escribir “Es impar”8. Fin_Si9. Fin

41C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 7: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

Desarrolle un algoritmo que permita leer tres valores y almacenarlos en las variables A, B y C, respectivamente. El algoritmo debe imprimir cual es el mayor y cuál es el menor. Recuerde constatar que los tres valores introducidos por el teclado sean valores distintos. Presente un mensaje de alerta en caso de que se detecte la introducción de valores iguales.

Pseudocódigo:

1. Inicio2. Inicializar las variables A, B y C3. Leer los tres valores4. Almacenar en las variables A, By C5. Si A > B y A > C Entonces6. Escribir A “Es el mayor”7. Sino8. Si B > A y B > C Entonces9. Escribir B “Es el mayor”10. Sino11. Escribir C “Es el mayor”12. Fin_Si13. Fin_Si14. Fin

42C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 8: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

Determinar la hipotenusa de un triángulo rectángulo conocidas las longitudes de sus dos catetos. Desarrolle el algoritmo correspondiente.

1. Inicio2. Declaración de Variables: CatA= 0, CatB=03. Leer el valor de cada cateto4. Almacenarlo en la variable CatA y CatB5. Calcular el valor de Hip con la formula indicada6. Escribir el valor de la Hipotenusa7. Fin

43C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 9: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

3.1.2 EJERCICIOS PARA DESARROLLAR

a. Realiza un algoritmo que le permita determinar el área de un rectángulo.b. Desarrolle un algoritmo que le permita determinar de una lista de números:

b.1. ¿Cuántos están entre el 50 y 75, ambos inclusive? b.2. ¿Cuántos mayores de 80? b.3. ¿Cuántos menores de 30?

44C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 10: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

5. TEMA 2: LA PROGRAMACIÓN

Este tema incluye la definición de los conceptos básicos del módulo de Fundamentos de la programación como son: Problema, programa y pseudocódigo. Por otra parte, se abordan los tipos de datos y los conceptos iniciales de programación con la clasificación de los lenguajes de programación, características del lenguaje de programación Java, los entornos de desarrollo y la explicación sobre el procedimiento de instalación de Jcreator.

5.1 EL PROBLEMA

Un problema se puede asociar a un conjunto de hechos, eventos o circunstancias que no permiten el logro de un objetivo. Los problemas a nivel de programación surgen a partir de la necesidad, ausencia, complementación o mejora de algún proceso.

Un problema se puede considerar como una situación que se debe resolver.

Un problema puede ser un asunto de lo que se espera una solución. Un problema es la observación de una serie de síntomas.

5.2 UN PROGRAMA

Es una serie de sentencias e instrucciones almacenadas que al ser ejecutadas en el computador, producen resultados que pueden ser impresiones de datos, cálculos de resultados, listado de productos, clientes, proveedores, entre otros. Los programas corresponden al software almacenado en un computador para realizar tareas determinadas.

Software de sistema: Son los sistemas operativos (Windows, Linux, Unix, entre otros).

Software de programación: brinda herramientas de programación para construir programas informáticos (Java, C++, Visual Basic, entre otros).

Software de aplicación: Para realizar tareas específicas Word, Excel, entre otros.

5.3 LENGUAJES DE PROGRAMACION

Corresponde al conjunto de variables, palabras reservadas y símbolos, que permiten al desarrollo de procesos, cálculos, decisiones, consultas, generación de reportes, entre otros, al ser ejecutados en un computador.

Los lenguajes de programación permiten la construcción de aplicaciones, ya que estas pueden ser leídas o digitadas por diferentes programadores.

45C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 11: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

Nombre URL Autor Fecha de consulta

Lenguaje http://jesusalejandrobeltran.blogspot.com/2010/08/lenguajes-de-porgramacion.html

Jesús Beltrán 16/10/2012

Los lenguajes de programación permiten a los programadores procesar datos e información en un computador. Según sean los requerimientos se podrá hacer uso de algunos de los anteriores mencionados en la imagen.

46C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 12: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

5.3.1 CARACTERISTICAS DEL LENGUAJE JAVA

Lenguaje de programación de alto nivel. Centrado en la WEB Orientado a Objetos Es independiente de la plataforma (Windows, Linux, Unix, entre otros)

Imagen 2. Clasificación de las plataformas Java

5.3.2 ENTORNOS INTEGRADOS DE DESARROLLO

Se encuentra un editor de texto, que es donde se escribe o digita el programa, se guarda o graba en cualquier dispositivo de almacenamiento como el disco duro, se compila para verificar si eta bien digitado y finalmente se ejecuta el programa para ver si se cumplen los objetivos.

Un ejemplo de esto es si se necesita multiplicar dos números e imprimir el resultado, entonces el programa deberá pedir que se le ingrese el multiplicando, el multiplicador y al realizar el proceso imprime el resultado.

47C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 13: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

Imagen 3. Entornos de trabajo de Java

5.3.3 INSTALACION DE LOS IDE’S

Eclipse http://www.eclipse.org/dowloands/distros.php Netbeans http://www.netbeans.info/dowloands/index.php Jcreator http://www.jcreator.com/dowloands.htm

5.3.4 Instalación de Jcreator

1. Debe en su PC contar el JDK que se obtiene de http://java.sun.com/2. Copiar en la PC en un directorio D:\java el JCreatorV3LE.zip y desempacarlo(Una guía de problemas para Jcreator se encuentra en http://www.jcreator.com/faq.htm)3. Ingresar a la carpeta D:\java\JCreatorV3LE\JCreatorV3LE y correr el exe JCreator.exe4. Seleccionar .java como asociación de archivos (Next)

48C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 14: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

5. Ubicar el JDK con el botón Browser y seleccionarlo (Next)

49C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 15: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

6. No es necesario contar con los JavaDoc así que puede terminar la instalación.

7. Les muestra el entorno de trabajo de JCreator.

8. Puede observar con cual versión de JDK está trabajando si ingresa al menúConfigure / Options / JDK Profiles / Edit (Cancel Cancel)En caso no cuente con el JDK tendrá agregar uno con el botón New

50C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 16: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

51C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 17: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

3.2.3 EJERCICIO DEL TEMA

A continuación el paso a paso de cómo crear un primer proyecto de trabajo en Jcreator:

1. Cree un nuevo proyecto de trabajo.File / New / Project

2. Seleccione una Aplicación de Java Básico

 3. Nombre a su proyecto como labs (Finish)

4. Compile el proyecto con el menú Build / Compile Project 52

C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 18: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

5. Ejecute el programa con Build / Execute Project

53C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 19: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

6. Agregue su propio archivo java al proyecto y nómbrelo como Hola.java (Finish)

54C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 20: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

7. Grabe el código ( File / Save), compílelo (Build / Compile File) y ejecútelo (Build / Ejecute File) La compilación no debe contener errores.

8. Para activar la línea de comandos en Jcreator

Elija Configure/ Options del menú. Seleccione JDK Tools Seleccione Run Application Presione Edit. Se mostrara la configuración del JDK Habilite con un checkbox Prompt for main method arguments

55C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 21: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

3.2.4 EJERCICIOS PARA DESARROLLAR

Consultar que otros IDEs existen para java Descargue Eclipse y realicen la instalación de este IDE Descarguen el tutorial de Java

56C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 22: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

6. TEMA 3: ENTRADA Y SALIDA DE DATOS

Los programas de computadora operan sobre un conjunto de datos de entrada, generando algún tipo de salida; para el caso solo se tratara la entrada por teclado y la salida a través de la pantalla. Los programas necesitan comunicarse con su entorno, tanto para leer datos e información que deben procesar, como para retornar o mostrar los resultados obtenidos.

6.1 CLASES UTILIZADAS PARA LA ENTRADA DE DATOS

En Java, para las entradas de datos estándar por teclado, se harán uso de las siguientes clases:

BufferedReader DataInputStream Scanner

BufferedReader

Esta clase de paquete io permite la entrada de datos. Tiene el método readline() que admite la entrada de datos de tipo String por teclado. En el caso de que sea un dato numérico, deberá realizarse la correspondiente conversión.

Ejemplo1

El siguiente programa permite que se ingrese un nombre por teclado y genera una salida o impresión con el mensaje: - Hola seguido del nombre digitado.

Import java.io.*;

public class LecturaTeclado{ public static Void main(String Arg[]) throws IOException {BufferedReader entrada = new BufferedReader (new InputStreamReader(System.in));

String nombre; System.out.print(“Digite el nombre”); nombre = entrada.readline(); System.out.println(“Hola ”+nombre);}}

57C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 23: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

Digite el programa anterior, guárdelo, compílelo y ejecútelo.

Ejemplo2

Al siguiente programa se le ingresa un número por teclado y lo eleva al cuadrado imprimiendo el resultado.

Entrada Salida2 43 9

Import java.io.*;

public class Cuadrado{ public static Void main(String Arg[]) throws IOException {BufferedReader entrada = new BufferedReader (new InputStreamReader(System.in));

String num=””; Int numero=0; Int cuad=0; System.out.print(“Digite un numero”); num = entrada.readline(); numero=Integer.parseInt(num); cuad=numero*numero; System.out.println(“El cuadrado de ”+numero+”es”+cuad);}}Digite el programa anterior, guárdelo, compílelo y ejecútelo.

Ejemplo3

Programa que imprime la raíz cuadrada de un número ingreso por teclado.

Import java.io.*;

public class RaizCuadrada{ public static Void main(String Arg[]) throws IOException

58C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 24: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

{BufferedReader entrada = new BufferedReader (new InputStreamReader(System.in));

String num=””; double numero=0; double raiz; System.out.print(“Digite un numero”); num = entrada.readline(); numero=Double.parseDouble(num); raiz=Math.sqrt(numero); System.out.println(“La raíz cuadrada”+numero+”es”+raiz);} }Digite el programa anterior, guárdelo, compílelo y ejecútelo.DataInputStream

Se utiliza para generar objetos que permiten la entrada de datos, además, tiene métodos asociados que admiten la lectura o entrada de datos por teclado, como readline().

Ejemplo1Digita un número y calcula el seno del mismo.

Import java.io.*;

public class Seno{ public static Void main(String Arg[]) throws IOException {DataInputStream entrada = new DataInputStream(System.in);

String num=””; double numero=0; double seno; System.out.print(“Digite un numero”); num = entrada.readline(); numero=Double.parseDouble(num); seno=Math.sin(numero); System.out.println(“El seno de”+numero+”es”+seno);} }

59C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 25: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

Digite el programa anterior, guárdelo, compílelo y ejecútelo.

Scanner

Esta clase no se incluye de forma automática y por eso se debe incluir mediante la palabra reservada así: import java.util.Scanner;

Import java.util.*; Import java.io.*;

public class LecturaScanner{ public static Void main(String Arg[]) throws IOException {Scanner input = new Scanner (System.in);

String cadena=””; System.out.print(“Digite el nombre”); cadena = input.next(); System.out.println(“Hola” +cadena);} }

3.3.1 EJERCICIO DEL TEMA

El siguiente listado corresponde a los métodos o funciones matemáticas, consulte con sus compañeros en clase, cual es la función de cada uno y ejecute un programa para cada uno como ejemplo

Math.abs(X). Math.sin(double). Math.cos(double). Math.tan(double). Math.log(double). Math.sqrt(double). Math.ceil(double). Math.floor(double). Math.pow(a,b). Math.random(). Math.max(a,b). Math.min(a,b). Math.E Math.PI

60C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 26: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

3.3.2 EJERCICIOS PARA DESARROLLAR

Elabore un programa que calcule el área del triángulo, ingresando los tres valores de los segmentos de la recta que lo conforman

En la entrada los datos son de tipo String y después se convierten al correspondiente tipo de dato. Consulte el método para las conversiones a datos de tipo long y doublé y elabore un programa en el que aplique los resultados de su consulta.

6.2 Paquete Swing

El paquete swing es utilizado para el desarrollo de las aplicaciones de interfaz gráfica que le permiten al usuario una interacción más amigable con la aplicación. Incluye componente como etiquetas, botones, tablas, marcos, áreas de texto, entre otros que vas a ser utilizados durante el desarrollo del curso.

La Clase JOptionPane

Se encuentra en el package javax.swing.JOptionPane que es necesario importar. showMessageDialog es un método que permite imprimir un mensaje por pantalla o capturar una información para una variable.

Ejemplo

import javax.swing.JOptionPane; public class saludo{ public static void main(String args[]) { JOptionPane.showMessageDialog(null, “Bienvenido a Java”); Systemexit(0); } }

A continuación el programa permite la lectura de un dato que en este caso es el nombre.

import javax.swing.JOptionPane; 61

C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 27: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

public class nombre{ public static void main(String args[]) { String nombre; nombre=JOptionPane.showInputDialog(“Digite su nombre”); JOptionPane.showMessageDialog(null, “Hola”+nombre); Systemexit(0); } }

Si al programa anterior le hacemos un pequeño cambio

JOptionPane.showMessageDialog(null, “Hola”+nombre,”saludo”,JOptionPane.INFORMATION_MESSAGE);

62C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 28: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

3.4.1 EJERCICIO DEL TEMA

Se deber aprobar con cada uno de los métodos asociados a la clase JOptionPane del anterior programa, cambiando la línea de código

JOptionPane.showMessageDialog(null, “Hola”+nombre,”saludo”,JOptionPane.INFORMATION_MESSAGE);

Imagen 4. Iconos asociados a la clase JOptionPane

El método showInputDialog, también permite seleccionar opciones de un combo, para el caso se tiene una lista de periféricos del computador.

Al dar clic en el combo se presentan las diferentes opciones del menú desplegable, que se muestra a continuación

63C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 29: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

Digite, ejecute y compile el siguiente programa y con el aporte de sus compañeros, agreguen más datos de las partes que integran el computador a la lista.

public class periféricos{ public void main(String args[]){ String resultados;Object[] datos= {“Computador”,“Multimedia”,”Monitor”,”CD”,”DVD”,”Mouse”,”Teclado”}; resultados=(String)JOptionPane.showinputDialog(null,”Seleccione Dispositivo”,”Perifericos” ,JOptionPane.QUESTION_MESSAGE, null, datos,datos[0]); system.exit(0); } }

3.4.2 EJERCICIOS PARA DESARROLLAR

Elabore un programa que calcula e imprima la hipotenusa de un triángulo rectángulo a partir de los catetos.

Construya un programa en Java que imprima el cociente de dividir dos números.

Elabore 5 programas con entorno de consola y 5 con entorno grafico que apliquen los métodos anteriormente mencionados.

64C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 30: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

3.5. PRUEBA FINAL

Resolver el siguiente test de conocimientos adquiridos:

1. El método definido en la clase JOptionPane que presenta una ventana con un mensaje es:

a) println();b) showMessageDialog();c) showInputDialog();d) realine();

2. El método definido en la clase DataInputStream que permite la lectura de datos es:

a) println();b) showMessageDialog();c) showInputDialog();d) realine();

3. La clase DataInputStream esta definida en el paquete:

a) swingb) útilc) iod) lang

4. La clase Scanner esta definida en el paquete:

a) swingb) útilc) iod) lang

65C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 31: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

4. PISTAS DE APRENDIZAJE

Tener en cuenta: Aprender a programar es un objetivo que se plantea mucha gente y que no todos alcanzan. Hay que tener claro que aprender programación no es tarea de un día ni de una semana: aprender programación requiere al menos varios meses y, si hablamos de programación a nivel profesional, varios años. No queremos con esto desanimar a nadie: en un plazo de unos pocos días podemos estar haciendo nuestros primeros programas y ver los primeros resultados, pero aprender a programar es mucho más que eso. Vamos a tratar de exponer nuestra visión sobre una forma adecuada de enfrentarnos al aprendizaje de la programación.

Tener presente: Antes de empezar a programar en un lenguaje debemos tener fundamentos de programación que nos servirán para todos los lenguajes, al igual que para construir una casa debemos tener antes cimientos que nos permitan continuar la construcción de forma sólida. Empezar a programar directamente en un lenguaje sin tener fundamentos de programación consideramos que llevará a que se requiera más tiempo y no se obtengan tan buenos resultados como si se empezara con fundamentos de programación.

Traer a la memoria: En primer lugar diremos que “aprender a programar” es una expresión bastante indefinida. Existen cientos de lenguajes de programación y de variantes, versiones, modificaciones, etc. así como distintos enfoques en cuanto a los objetivos (programación web, aplicaciones de gestión, aplicaciones de bases de datos, etc.). Por tanto “aprender a programar” es bastante ambiguo: es como decir “quiero aprender a pintar”. Nos permitiría centrarnos mejor definir un objetivo más específico: “Quiero aprender a dibujar comics estilo manga”. El problema para los no iniciados es muchas veces que la programación es un campo muy cambiante, donde hay una continua proliferación de versiones y pugnas entre casas comerciales que hacen que los lenguajes cambien muy rápidamente y nadie sepa muy bien qué es lo más conveniente aprender.

66C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S

Page 32: Desarrollo Del Modulo (2 Unidad).

F U N D A M E N T O S D E P R O G R A M A C I O N

5. GLOSARIO

abstract: Abstracto. Aplicable a clases o métodos. array: Variable que posee varias posiciones para almacenar un valor en

cada posición. Las posiciones son accedidas mediante un índice numérico. break: Palabra clave que finaliza la ejecución de un bucle o de una

instrucción switch. bucles: Tipo de estructura iterativa, que permite repetir un conjunto de

instrucciones un número variable de veces. clase: Estructura que define como son los objetos, indicando sus atributos y

sus acciones. clase base: Clase de la cuál se hereda para construir otra clase,

denominada derivada. Excepcion: Objeto empleado para representar una situación de excepción

(error) dentro de una aplicación java. interfaz: Define un tipo de datos, pero sólo indica el prototipo de sus

métodos, nunca la implementación. JDK: Java Development Kit, es el conjunto de herramientas proporcionadas

por sun, que permite compilar y ejecutar código java. máquina virtual: Es la encargada de ejecutar el código java. multiplataforma: Posibilidad de existir en varias plataformas (sistemas

operativos) Sobrescritura: Poseer el mismo método, pero con código distinto, en una

clase base y en una clase que deriva de ella. transformación de datos: Cómo cambiar el tipo de una información, por

ejemplo cambiar el literal "23" al valor numérico 23.

6. BIBLIOGRAFÍA

http://es.wikipedia.org/wiki/Bubblesort

http://sistemas.itlp.edu.mx/tutoriales/estructdatos2/tema5_1.htm

http://macabremoon0.tripod.com/id13.html

http://clintyanyurbis-diagramasdeflujo.blogspot.com/2007/07/diagramas-de-flujo.html

67C o r p o r a c i o n I b e r o a m e r i c a d e C i e n c i a y T e c n o l o g i a C I B E R C T E C S A S