39
ENTORNO DE DESARROLLO ENTORNO DE DESARROLLO INTEGRADO NETBEANS INTEGRADO NETBEANS Lenguaje de Programación IV Lenguaje de Programación IV Noviembre, 2010 Noviembre, 2010 Prof.(a): Aimará Vargas Prof.(a): Aimará Vargas

Java Entorno de Desarrollo Integrado Netbeans

Embed Size (px)

Citation preview

Page 1: Java Entorno de Desarrollo Integrado Netbeans

ENTORNO DE ENTORNO DE DESARROLLO DESARROLLO INTEGRADO INTEGRADO NETBEANS NETBEANS

Lenguaje de Programación IVLenguaje de Programación IV

Noviembre, 2010Noviembre, 2010Prof.(a): Aimará VargasProf.(a): Aimará Vargas

Page 2: Java Entorno de Desarrollo Integrado Netbeans

NetBeansNetBeans

Noviembre, 2010Noviembre, 2010Prof.(aProf.(a): Aimará Vargas): Aimará Vargas

Ejercicio 1Realizar un programa que permita calcular la nota promedio final en base a las dos notas

Pseudocodigo: Algoritmo PromedioNotas

Variables: nota1, nota2: enteropromedio: realinicioleer (nota1);leer (nota2);promedio= (nota1+nota2)/2;Mostrar (‘El promedio de notas es’ promedio)fin

Page 3: Java Entorno de Desarrollo Integrado Netbeans

Noviembre, 2010Noviembre, 2010Prof.(aProf.(a): Aimará Vargas): Aimará Vargas

Ejercicio 1

Solución en código:Crear el proyecto PromedioDentro del cuerpo del programa:Declarar las variables involucradasLeer las notas ( javax.swing.JOptionPane)El objeto JOptionPane devuelve una cadena de caracteres que debe transformarse a entero (Integer.parseInt () )Calcular el promedioMostrar el promedio por pantalla (javax.swing.JOptionPane)

Page 4: Java Entorno de Desarrollo Integrado Netbeans

ESTRUCTURAS DE ESTRUCTURAS DE CONTROL CONTROL

Lenguaje de Programación IVLenguaje de Programación IV

Noviembre, 2010Noviembre, 2010Prof.(a): Aimará VargasProf.(a): Aimará Vargas

Page 5: Java Entorno de Desarrollo Integrado Netbeans

Noviembre, 2010Noviembre, 2010Prof.(aProf.(a): Aimará Vargas): Aimará Vargas

Estructura General:

if (expresion_logica){

instrucciones;

}

else {

instrucciones;

}

Nota: si lleva; antes del else si es 1 instrucción

Ejemplo:Ejemplo:if (edad >= 18) {if (edad >= 18) {

System.out.println(“Mayor System.out.println(“Mayor de edad”);de edad”);

}}

else {else { System.out.println(“Menor System.out.println(“Menor de edad”);de edad”);

}}

if / else

Page 6: Java Entorno de Desarrollo Integrado Netbeans

Noviembre, 2010Noviembre, 2010Prof.(aProf.(a): Aimará Vargas): Aimará Vargas

switch / case

Estructura General:switch (expresion) {

case valor1:instrucciones; break;case valor2:instrucciones; break;...case valorn:instrucciones; break;default:instrucciones; break;

}

Ejemplo:Ejemplo:char sexo=‘f’;char sexo=‘f’;

switchswitch(sexo) {(sexo) {

casecase ‘m’: ‘m’:

System.out.println(“MasculinoSystem.out.println(“Masculino”);”);

break;break;

casecase‘f’:‘f’:

System.out.println(“FemeninoSystem.out.println(“Femenino”);”);

break;break;

}}

Page 7: Java Entorno de Desarrollo Integrado Netbeans

Noviembre, 2010Noviembre, 2010Prof.(aProf.(a): Aimará Vargas): Aimará Vargas

Ciclos while

Estructura General:

while (condición) {

instrucciones;

}

Ejemplo:Ejemplo:int i=1;int i=1;

while (i<=10) {while (i<=10) {

System.out.println(i);System.out.println(i);

i++;i++;

}}

Page 8: Java Entorno de Desarrollo Integrado Netbeans

Noviembre, 2010Noviembre, 2010Prof.(aProf.(a): Aimará Vargas): Aimará Vargas

Ciclos for

Estructura General:

for (inicio; condición; incremento) {

instrucciones;

}

Ejemplos:Ejemplos:for (int i=1; i<=10; i++)for (int i=1; i<=10; i++)

System.out.println(i);System.out.println(i);

______________________________________________

for (int i=10; ifor (int i=10; i>>=1; i--)=1; i--)

System.out.println(i);System.out.println(i);

Page 9: Java Entorno de Desarrollo Integrado Netbeans

Noviembre, 2010Noviembre, 2010Prof.(aProf.(a): Aimará Vargas): Aimará Vargas

Ciclos do…while

Estructura General:

do {

instrucciones;

}while(condición);

Ejemplo:Ejemplo:

int i = 1;int i = 1;do {do {

System.out.println(i);System.out.println(i);

i++;i++;

}while(i<=10);}while(i<=10);

Page 10: Java Entorno de Desarrollo Integrado Netbeans

Noviembre, 2010Noviembre, 2010Prof.(aProf.(a): Aimará Vargas): Aimará Vargas

Ejercicio 2

Realizar un programa que calcule el total a pagar por la compra de varios productos. El ingreso de productos continua si digitamos el valor 1; se termina el ingreso de productos y se muestra el total a pagar si digitamos el valor 0

Page 11: Java Entorno de Desarrollo Integrado Netbeans

Noviembre, 2010Noviembre, 2010Prof.(aProf.(a): Aimará Vargas): Aimará Vargas

Ejercicio 2Solución:Crear el proyecto CompraCrear la clase ProductoDefinir los atributos y métodos de ProductoDentro del cuerpo de la clase principal:Crear un objeto a partir de la clase ProductoDeclarar e inicializar los atributos de la clase principalComenzar el ciclo:

Obtener precio y cantidad del productoObtener el subtotal de la compra y acumularloPreguntar (desea continuar)Mientras continuar=1, seguir el ciclo

Mostrar (totalCompra)

Page 12: Java Entorno de Desarrollo Integrado Netbeans

Noviembre, 2010Noviembre, 2010Prof.(aProf.(a): Aimará Vargas): Aimará Vargas

Programa de Compras

public class Producto {public class Producto {

double precio,cantidad,monto;

public void obtenerPrecio(){

precio= Double.parseDouble(JOptionPane.showInputDialog("introduzca el precio del producto: "));

}

public void obtenerCantidad(){

cantidad= Double.parseDouble(JOptionPane.showInputDialog("introduzca cantidad del producto: "));

}

public void calculaPrecio(){

monto=precio * cantidad;

}

}}

Page 13: Java Entorno de Desarrollo Integrado Netbeans

Noviembre, 2010Noviembre, 2010Prof.(aProf.(a): Aimará Vargas): Aimará Vargas

Programa de Compras public static void main(String[] args) {public static void main(String[] args) {

// TODO code application logic here

Producto Productos = new Producto();

int opcion;

double compra=0;

do {

Productos.obtenerPrecio();

Productos.obtenerCantidad();

Productos.calculaPrecio();

compra=compra+Productos.monto;

opcion=Integer.parseInt(JOptionPane.showInputDialog("desea cargar mas produsctos 1-si,0-no "));

} while (opcion==1);

JOptionPane.showMessageDialog(null, "el total a pagar por su compa es "+compra);

}

} // fin de la clase} // fin de la clase

Page 14: Java Entorno de Desarrollo Integrado Netbeans

ESTRUCTURAS DE ESTRUCTURAS DE DATOSDATOS

Lenguaje de Programación IVLenguaje de Programación IV

Noviembre, 2010Noviembre, 2010Prof.(a): Aimará VargasProf.(a): Aimará Vargas

Page 15: Java Entorno de Desarrollo Integrado Netbeans

Introducción

Una estructura de datos define la organización e interrelación de estos, y un conjunto de operaciones que se pueden realizar sobre él. Los datos de tipo estándar pueden ser organizados en diferentes estructuras de datos: estáticas y dinámicas.

Page 16: Java Entorno de Desarrollo Integrado Netbeans

Operaciones Básicas

Las operaciones básicas son: Alta: adicionar un nuevo valor a la estructura. Baja: borrar un valor de la estructura. Búsqueda: encontrar un determinado valor en la

estructura para se realizar una operación con este valor, en forma SECUENCIAL o BINARIO (siempre y cuando los datos estén ordenados).

Ordenamiento: de los elementos pertenecientes a la estructura.

Apareo: dadas dos estructuras originar una nueva ordenada y que contenga a las apareadas.

Page 17: Java Entorno de Desarrollo Integrado Netbeans

Estructuras de Datos

Arrays (Arreglos)Arrays (Arreglos) Vectores Vectores (De 1 dimensión)(De 1 dimensión) MatricesMatrices (De 2 o más (De 2 o más

dimensiones)dimensiones) Listas EnlazadasListas Enlazadas

Listas SimplesListas Simples Listas DoblesListas Dobles Listas CircularesListas Circulares

PilasPilas ColasColas ÁrbolesÁrboles

Árboles binariosÁrboles binarios Árboles MulticaminoÁrboles Multicamino

ConjuntosConjuntos GrafosGrafos MontículosMontículos

Algunas estructuras de datos utilizadas en Algunas estructuras de datos utilizadas en programación son: programación son:

Page 18: Java Entorno de Desarrollo Integrado Netbeans

Vectores o Arreglos

Son llamados arreglos.Son llamados arreglos.Es un tipo de dato especial al que se hace referencia Es un tipo de dato especial al que se hace referencia por un nombre.por un nombre.Está compuesto por una colección de elementos del Está compuesto por una colección de elementos del mismo tipo de datos que se almacenan mismo tipo de datos que se almacenan consecutivamente en memoria.consecutivamente en memoria.Pueden ser creados de cualquier tipo.Pueden ser creados de cualquier tipo.Se utilizan para agrupar información relacionadaSe utilizan para agrupar información relacionadaPara accesar un elemento particular del arreglo, se Para accesar un elemento particular del arreglo, se utilizan índicesutilizan índices

Page 19: Java Entorno de Desarrollo Integrado Netbeans

Ejemplo de Arreglo

Ejemplo de un arreglo que contiene 7 números enterosEjemplo de un arreglo que contiene 7 números enteros

33 66 88 11 00 44 22

00 11 22 33 44 55 66 índicesíndices

Elementos delElementos del

vectorvector

Elemento que ocupa laElemento que ocupa la

posición 3 en el vectorposición 3 en el vector

Page 20: Java Entorno de Desarrollo Integrado Netbeans

Declaración de un Arreglo

tipoDato[ ] tipoDato[ ] nombreVariable;nombreVariable;

tipoDato tipoDato nombreVariablenombreVariable[ ];[ ];

tipoDato[ ] tipoDato[ ] nombreVariable;nombreVariable;

tipoDato tipoDato nombreVariablenombreVariable[ ];[ ];

Para declarar un vector de número enteros, al cual se Para declarar un vector de número enteros, al cual se le dá el nombre de le dá el nombre de miArreglomiArreglo se puede hacer de la se puede hacer de la siguiente manera:siguiente manera:

int[ ] miArreglo;int[ ] miArreglo;

// o también// o también

int miArreglo[ ];int miArreglo[ ];

int[ ] miArreglo;int[ ] miArreglo;

// o también// o también

int miArreglo[ ];int miArreglo[ ];

Page 21: Java Entorno de Desarrollo Integrado Netbeans

Creación de un Arreglo

Cuando se declara una variable vector, esta no tiene ningún Cuando se declara una variable vector, esta no tiene ningún valor. Antes de asignar cualquier valor, se debe valor. Antes de asignar cualquier valor, se debe reservar un reservar un espacio en memoriaespacio en memoria, utilizando el operador , utilizando el operador newnew y asignarlo a y asignarlo a la variable.la variable.

Continuando con el ejemplo anteriorContinuando con el ejemplo anterior

nombreVector = nombreVector = newnew tipoDato[tamano]; tipoDato[tamano];

miArreglo = new int[7];miArreglo = new int[7]; miArreglo = new int[7];miArreglo = new int[7];

Al reservar espacio para los elementos de un vector, mediante Al reservar espacio para los elementos de un vector, mediante newnew, se inicializa automáticamente en , se inicializa automáticamente en cero su contenidocero su contenido..

Cuando se ejecuta esta sentencia de creación , la variable Cuando se ejecuta esta sentencia de creación , la variable miArreglo, hará referencia a un vector de 7 elementos enteros.miArreglo, hará referencia a un vector de 7 elementos enteros.

Page 22: Java Entorno de Desarrollo Integrado Netbeans

Uso de un Arreglo

33 66 88 11 00 44 22

00 11 22 33 44 55 66

miArreglomiArreglo [2] [2]miArreglomiArreglo [2] [2]

Para accesar un elemento de un vector, se coloca el nombre del Para accesar un elemento de un vector, se coloca el nombre del vector y entre corchetes el índice del elemento que se desea.vector y entre corchetes el índice del elemento que se desea.

Por ejemplo, si se desea obtener el número Por ejemplo, si se desea obtener el número 88 del siguiente del siguiente vector:vector:

nombreVector [índice]nombreVector [índice]nombreVector [índice]nombreVector [índice]

Page 23: Java Entorno de Desarrollo Integrado Netbeans

Uso de un Arreglo

LosLos índices índices en un vector, en un vector, van desde 0 hasta el van desde 0 hasta el tamatamañño – 1.o – 1.

El tamaEl tamañño de un vector se obtiene con el método o de un vector se obtiene con el método lengthlength, con la siguiente sintaxis:, con la siguiente sintaxis:

nombreVector.lengthnombreVector.length

En nuestro ejemplo:En nuestro ejemplo:

miArreglo.lengthmiArreglo.lengthmiArreglo.lengthmiArreglo.length

Page 24: Java Entorno de Desarrollo Integrado Netbeans

Ejemplo de Uso de un Arreglo

Ejemplo: crear un vector de 5 posiciones, rellenarlo con Ejemplo: crear un vector de 5 posiciones, rellenarlo con numeros pares y luego mostrar su contenido.numeros pares y luego mostrar su contenido.

public class EjmArreglo {public class EjmArreglo {

int miArreglo[]= new int [5];int miArreglo[]= new int [5];

public void llenarVector() {public void llenarVector() {

for (int i=0; i <= 4; i++) {for (int i=0; i <= 4; i++) {

System.out.println("posicion " + i + " ");System.out.println("posicion " + i + " ");

miArreglo[i] = (i+1) * 2;miArreglo[i] = (i+1) * 2;

}}

}}

public void mostrarVector() {public void mostrarVector() {

for (int i=0; i < miArreglo.length; i++)for (int i=0; i < miArreglo.length; i++)

System.out.print(miArreglo[i] + " ");System.out.print(miArreglo[i] + " ");

}}

}}

public static void main(String[] args) public static void main(String[] args) {{

// TODO code application logic here// TODO code application logic here

EjmArreglo micalculo = new EjmArreglo micalculo = new EjmArreglo();EjmArreglo();

micalculo.llenarVector();micalculo.llenarVector();

micalculo.mostrarVector();micalculo.mostrarVector();

}}

}}// fin de clase// fin de clase

Page 25: Java Entorno de Desarrollo Integrado Netbeans

Ejemplo de Matriz

0 1 2 3 4 50 1 2 3 4 5

00

11

22

33

44

55

(matriz 2 3)(matriz 2 3)

(matriz 4 0)(matriz 4 0)

Page 26: Java Entorno de Desarrollo Integrado Netbeans

Declaración de una Matriz

tipoDato tipoDato nombreVariablenombreVariable[ ][ ];[ ][ ];tipoDato tipoDato nombreVariablenombreVariable[ ][ ];[ ][ ];

Para declarar una matriz de números enteros, Para declarar una matriz de números enteros, llamada llamada miMatriz, se miMatriz, se puede hacer de la siguiente puede hacer de la siguiente manera:manera:

int miMatriz[ ][ ];int miMatriz[ ][ ];int miMatriz[ ][ ];int miMatriz[ ][ ];

Page 27: Java Entorno de Desarrollo Integrado Netbeans

Creación de una Matriz

nombreMatriz = nombreMatriz = newnew tipoDato[filas][columnas]; tipoDato[filas][columnas];

Para crear una matriz de Para crear una matriz de 2 filas y 3 columnas2 filas y 3 columnas de de números enteros, llamada números enteros, llamada miMatriz,miMatriz, se escribe se escribe

miMatriz = new int [2][3];miMatriz = new int [2][3];miMatriz = new int [2][3];miMatriz = new int [2][3];

miMatriz[0][0]miMatriz[0][0]miMatriz[0][1]miMatriz[0][1]miMatriz[0][2]miMatriz[0][2]

miMatriz[1][0]miMatriz[1][0]miMatriz[1][1]miMatriz[1][1]miMatriz[1][2]miMatriz[1][2]

generagenera

Page 28: Java Entorno de Desarrollo Integrado Netbeans

Creación de una Matriz

miMatriz = new int [2][3];miMatriz = new int [2][3];

Primero crea un vector de 2 elementosPrimero crea un vector de 2 elementos

Elemento 0Elemento 0

Elemento 1Elemento 1

Luego cada elemento lo transforma en un vector de 3 Luego cada elemento lo transforma en un vector de 3 elementoselementos

miMatriz[0][0]miMatriz[0][0]miMatriz[0][1]miMatriz[0][1]miMatriz[0][2]miMatriz[0][2]

miMatriz[1][0]miMatriz[1][0]miMatriz[1][1]miMatriz[1][1]miMatriz[1][2miMatriz[1][2]]

Fila 0Fila 0

Fila 1Fila 1

Columna 2Columna 2Columna 0Columna 0

Page 29: Java Entorno de Desarrollo Integrado Netbeans

Ejemplo de Uso de una Matriz

Ejemplo: Crear una matriz de 2 filas y 3 columnas, llenarla y luego Ejemplo: Crear una matriz de 2 filas y 3 columnas, llenarla y luego mostrar su contenido.mostrar su contenido.

class EjemploMatriz { static void llenarMatriz(int m[ ][ ]) { for (int i=0; i < 2; ++i) { for (int j=0; j< 3; ++j) { System.out.println(“posicion" + i + “- " + j); m[i][j] =i+j; } } } static void mostrarMatriz(int m[ ][ ]) { for (int i=0; i < 2; i++) { for (int j=0; j< 3; j++) { System.out.print(m[i][j] + " "); } System.out.println(); } }

public static void main (String arg[ ]) {public static void main (String arg[ ]) {

int miMatriz[ ][ ];int miMatriz[ ][ ];

miMatriz = new int[2][3];miMatriz = new int[2][3];

llenarMatriz(miMatriz);llenarMatriz(miMatriz);

mostrarMatriz(miMatriz);mostrarMatriz(miMatriz);

}}

}}// fin de clase// fin de clase

Page 30: Java Entorno de Desarrollo Integrado Netbeans

Clase Vector

La clase Vector es parte del paquete java.util de la librería estándar de clases de Java. Ofrece un servicio similar a un arreglo, ya que se pueden almacenar y accesar valores referenciados por un índice.

Mientras un arreglo es de cierto tamaño dado, un objeto de tipoVector puede dinámicamente crecer y decrecer conforme se vaya necesitando. Un elemento puede insertarse y eliminarse de una posición específica a través de la invocación de un sólo método.

A diferencia de un arreglo, un Vector no está declarado para ser de un tipo particular.  Un objeto de tipo Vector maneja una lista de referencias a la clase Object, así no pueden almacenarse tipos de datos primitivos.Si se necesitan añadir valores de datos primitivos a un Vector se pueden utilizar las clases conocidas como envoltorios que son: Integer, Long, Double y Float. Sus métodos de conversión respectivos son: intValue ( ), longValue ( ), doubleValue ( ) y floatValue ( ).

Page 31: Java Entorno de Desarrollo Integrado Netbeans

Métodos de la Clase Vector

Vector ( ) Constructor: crea un vector inicialmente vacío

void addElement (Objet objeto) Inserta el objeto especificado al final del vector

void setElementAt (Object objeto, int indíce) Inserta el objeto especificado en el vector en la posición especificada

Object remove (int indíce) Elimina el objeto que se encuentra en la posición específicada y lo regresa

boolean removeElement (Object objeto) Elimina la primera ocurrencia del objeto especificado en el vector

Page 32: Java Entorno de Desarrollo Integrado Netbeans

void removeElementAt (int indíce) Elimina el objeto especificado en el índice del vector 

void clear ( ) Elimina todos los objetos del vector

boolean contains (Object objeto) Regresa verdadero si el objeto dado pertenece al vector

int indexOf (Object objeto) Regresa el índice del objeto especificado. Regresa -1 si no fue encontrado el objeto

Métodos de la Clase Vector

Page 33: Java Entorno de Desarrollo Integrado Netbeans

Object elementAt (int indíce) Regresa el componente en el índice especificado

boolean isEmpty ( ) Regresa verdadero si el vector no contiene elementos

int size ( ) Regresa el número de elementos en el vector

Métodos de la Clase Vector

Page 34: Java Entorno de Desarrollo Integrado Netbeans

Ejemplo de Uso de la clase Vector

import java.util.Vector;public class Beatles { public static void main () { Vector banda = new Vector (); banda.addElement ("John"); banda.addElement ("Paul"); banda.addElement ("Pete"); banda.addElement ("George"); System.out.println (banda); banda.removeElement ("Pete"); System.out.println (banda); System.out.println ("En la posición 1 está: "+banda.elementAt (1)); banda.insertElementAt ("Ringo", 2); System.out.println ("Tamaño de la banda: " + banda.size ());  for (int i = 0; i < banda.size(); i++) System.out.print ( banda.elementAt (i) + " "); }}

Page 35: Java Entorno de Desarrollo Integrado Netbeans

Búsqueda Secuencial

Una manera simple de Una manera simple de

expresar la busqueda expresar la busqueda

secuencial es la siguiente:secuencial es la siguiente:

Page 36: Java Entorno de Desarrollo Integrado Netbeans

Búsqueda Secuencial

//Implementación en Java de la Busqueda secuencialpublic static boolean busquedaSecuencial(int[] n, int llave) {

boolean encontrado = false; int posicion =0; while ((posicion < n.length) && (!encontrado)) {

if(n[posicion] == llave) { encontrado = true;}

else{ posicion++;}

}//fin whilereturn encontrado;

}//fin

Page 37: Java Entorno de Desarrollo Integrado Netbeans

Ordenamiento de Burbuja

Una manera simple de expresar el ordenamiento de burbuja en pseudocodigo es la siguiente:

Page 38: Java Entorno de Desarrollo Integrado Netbeans

Ordenamiento de Burbuja

//Implementación en Java del Ordenamiento por Burbuja public static int[] ordenarBurbuja(int[] n) {

int temp; int t = n.length; for (int i = 1; i < t; i++) {

for (int k = t- 1; k >= i; k--) { if(n[k] < n[k-1]) { temp = n[k]; n[k] = n[k-1]; n[k-1]= temp;}//fin if

}// fin 2 for}//fin 1 for return n;

}//fin

UNIDAD 6. ESTRUCTURAS DE DATOSUNIDAD 6. ESTRUCTURAS DE DATOS

Page 39: Java Entorno de Desarrollo Integrado Netbeans

Noviembre, 2010Noviembre, 2010Prof.(aProf.(a): Aimará Vargas): Aimará Vargas

Asignación (5%)

Realizar un programa que calcule y muestre por pantalla el promedio de varias notas. Además, debe validar que las notas introducidas(toda nota debe ser mayor ó igual a “0”).Debe enviar por correo la carpeta del proyecto contenida en una carpeta con su nombre, apellido y número de cédula.Fecha de entrega: próximo miércoles 17/11“Se restará un punto de la nota obtenida por cada día de retraso”PROGRAMAS IGUALES TENDRAN “0”AUTOMATICAMENTE.