La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Facultad de Ingeniería y Arquitectura Introducción a la Computación 2007 – I (14va Semana) Lunes 11 de Junio Ing. Juan José Montero Román.

Presentaciones similares


Presentación del tema: "Facultad de Ingeniería y Arquitectura Introducción a la Computación 2007 – I (14va Semana) Lunes 11 de Junio Ing. Juan José Montero Román."— Transcripción de la presentación:

1 Facultad de Ingeniería y Arquitectura Introducción a la Computación 2007 – I (14va Semana) Lunes 11 de Junio Ing. Juan José Montero Román. jmonteror@usmp.edu.pe

2 ESTRUCTURAS DE DATOS TIPO ARREGLO VECTORES ESTRUCTURAS DE DATOS TIPO ARREGLO VECTORES Introducción a la Computación SEMANA 15

3 Objetivos : Describir la estructura de datos tipo arreglo. Uso de vectores y matrices. Desarrollo de soluciones con uso de vectores Introducción a la Computación

4 Los arreglos son estructuras de datos que consisten en elementos del mismo tipo. Los arreglos son entidades estáticas en cuanto a que su tamaño no cambia una vez que han sido creadas. Se debe tener en cuenta que antes de usar los elementos de un arreglo, se debe declarar, crear e inicializar el arreglo. ESTRUCTURAS DE DATOS : ARREGLOS ARREGLOS Definición:

5 ARREGLOS Tipos: 32-2-20174 0123 números tamaño=4 Arreglos unidimensionales o vectores Representación: Arreglos bidimensionales o matrices Representación: 32-2-20174 0123 números filas=2, columnas=4 1412-5129 0 1 ESTRUCTURAS DE DATOS : ARREGLOS

6 DECLARACIÓN: tipoDato nombreVector [ ] En Pseudocódigo Ejemplos; - TEXTO nombres [ ] - NUMERO sueldos [ ] - CARACTER letras [ ] tipoDato nombreVector [ ] ; En Java tipoDato [ ] nombreVector ; Ejemplos ; - String nombres [ ] ; - double sueldos [ ] ; - char letras [ ] ; ARREGLOS TIPO VECTOR

7 CREACIÓN: CREAR nombreVector [tamaño] Ejemplos; - CREAR nombres [10 ] - CREAR sueldos [numNot] - CREAR letras [LONGITUD texto] nombreVector = new tipoDato [tamaño] ; Ejemplos; - nombres = new String [10] ; - sueldos = new double [numNot] ; - letras = new char [texto.length()] ; ARREGLOS TIPO VECTOR En Pseudocódigo En Java

8 INGRESO DE DATOS: identificador [índice] = valor ;nombreVector [índice] = valor Ejemplos; Cuando utilizamos vectores podemos utilizar las estructuras lógicas de repetición para optimizar de manera significativa el proceso de ingreso de datos especialmente utilizando la estructura DESDE ó PARA. - nombres [0 ] = “Danae” - sueldos [1] = 100.5 - letras [x] = ‘J’ - nombres [0 ] = “Danae” ; - sueldos [1] = 100.5 ; - letras [x] = ‘J’ ; ARREGLOS TIPO VECTOR En Pseudocódigo En Java

9 TAMAÑO: variable = LONGITUD nombreVector [ ] Ejemplos; - tamaño = LONGITUD nombres [ ] - tamaño = LONGITUD sueldos [ ] - tamaño = LONGITUD letras [ ] variable = nombreVector.length ; Ejemplos; - tamaño = nombres.length ; - tamaño = sueldos.length ; - tamaño = letras.length ; ARREGLOS TIPO VECTOR En Pseudocódigo En Java

10 DECLARACIÓN Y CREACIÓN: En Java DECLARACIÓN, CREACIÓN E INICIALIZACIÓN: tipoDato nombreVector [ ] = { valor1, valor2, valor3, valor4, …, valorN } ; En Java tipoDato nombreVector [ ] = new tipoDato [tamaño] ; ARREGLOS TIPO VECTOR

11 Ejercicio 1 Desarrollar una solución que permita ingresar y almacenar las notas de todas las prácticas de un alumno. Determinar el promedio de las prácticas sabiendo que se elimina la práctica con la nota mas baja. Utilice vectores. ARREGLOS TIPO VECTOR

12 ENTRADA: numPra, notas[ ] / SALIDA: promAlu INICIO ENTERO i, numPra REAL sumaNotas = 0, notaMenor = 20 REAL notas[ ], promAlu COMENTARIO “Creación del arreglo” CREAR notas [numPra] COMENTARIO “Ingreso de datos al arreglo notas[ ].” PARA (i=0, i<numpra, i=i+1) HACER LEER notas[i] FINPARA COMENTARIO “ Cálculo del promedio de notas de las prácticas” PARA (i=0, i<numpra, i=i+1) HACER sumaNotas = sumaNotas + notas[i] FINPARA PARA (i=0, i<numpra, i=i+1) HACER SI ( notaMenor > notas[i] ) ENTONCES notaMenor = notas[i] FINSI FINPARA promAlu = ( sumaNotas - notaMenor ) / ( numPra - 1 ) ESCRIBIR promAlu Algoritmo VectorNotas

13

14 TRABAJO FINAL Desarrolle una solución en Java que permita mostrar un menú con las siguientes opciones: [ 1 ] Presentación del grupo de trabajo [ 2 ] Test [ 3 ] Generación de gráfico de números [ 4 ] Uso de la Clase String [ 5 ] Salida [ 1 ] Presentación del grupo de trabajo, En esta opción la solución deberá Mostrar el nombre y código de los integrantes del grupo.

15 TRABAJO FINAL [ 2 ] Test, La solución en Java para esta opción, deberá permitir evaluar el conocimiento de un alumno de los temas desarrollados en el curso de Introducción a la Computación. Para ello deberá considerar: a.- El numero de preguntas disponibles para evaluarse, deberán ser 30, cada una de las cuales deberá tener 5 alternativas, debiendo ser solo una de ellas la correcta. b.- El usuario deberá ingresar el número de preguntas a responder, siendo el mínimo número de preguntas a responder de 5 preguntas y el máximo de 20 preguntas. c.- El programa deberá seleccionar aleatoriamente el número de preguntas seleccionadas por el usuario en base de las 30 preguntas disponibles, validando que no se repita la misma pregunta. d.- Finalmente la solución deberá mostrar la cantidad y porcentaje de preguntas respondidas correctamente y el total de preguntas seleccionadas por el usuario.

16 TRABAJO FINAL [ 3 ] Generación de gráfico de números, En esta opción la solución deberá generar con los símbolos que usted estime conveniente el gráfico de los números del 0 al 9. Ejemplo: *** * *** * *** [ 4 ] Uso de la Clase String, En esta opción, deberá desarrollar una solución que emplee al menos 5 métodos de la clase String. [ 5 ] Salida, En esta opción, permitirá la salida del menú.

17 TRABAJO FINAL CONSIDERACIONES GENERALES La fecha de entrega del trabajo será el lunes 13/06/2007, en el horario de clases (no se recibirán trabajos, después del termino de la misma). Se deberá entregar la solución en medio magnético e impreso. Para el trabajo impreso, considerar presentar: -La carátula, -Código Java, -Tipo de estructura de datos empleadas -Tipo de estructuras de control empleadas -Conclusiones y -Recomendaciones Se deberá aplicar, solo los conocimientos adquiridos en las clases del curso de Introducción a la Computación. Para la evaluación se considerará, el orden, validaciones y creatividad del grupo. Grupos de 5 integrantes. El nombre del programa será Prg mas las iniciales del Apellido paterno de los integrantes del grupo, ejemplo : PrgMBASI. Presentar fotocopia de la caratula del trabajo.

18 Ejercicio 2 Desarrollar una solución que permita ingresar y almacenar el sueldo (sueldos[]) de todos los trabajadores de una empresa. Calcular y mostrar el sueldo neto (sueldoNeto) de cada trabajador, sabiendo que se tienen que descontar el 12% por impuestos y el 3% por seguro. Consistenciar el ingreso de datos. Ejercicio 3 Desarrollar una solución que permita ingresar y almacenar la nota (notas[]) de 10 alumnos de un salón de clase y determinar el promedio final del aula (prom). Mostrar el promedio. Consistenciar el ingreso de datos..Ejercicio 4 Desarrollar una solución que permita ingresar y almacenar la nota (notas[]) de todos los alumnos de un salón de clase y determinar el promedio final (prom) redondeado a dos decimales. Mostrar el promedio. Consistenciar el ingreso de datos. Emplee vectores ARREGLOS TIPO VECTOR

19 ESTRUCTURAS DE DATOS TIPO ARREGLO MATRICES ESTRUCTURAS DE DATOS TIPO ARREGLO MATRICES Introducción a la Computación SEMANA 16

20 ESTRUCTURAS DE DATOS Arreglos Tipos: 32-2-20174 0123 números tamaño=4 Arreglos unidimensionales o vectores Representación: Arreglos bidimensionales o MATRICES Representación: 32-2-20174 0123 números filas=2, columnas=4 1412-5129 0 1

21 ESTRUCTURAS DE DATOS Declaración: tipoDato identificador [ ][ ] En Pseudocódigo Arreglos tipo MATRIZ Ejemplos; - TEXTO nombres [ ][ ] - NUMERO sueldos [ ][ ] - CARACTER letras [ ][ ] tipoDato identificador [ ][ ] ; En Java tipoDato [ ][ ] identificador ; ó Ejemplos ; - String nombres [ ][ ] ; - double sueldos [ ][ ] ; - char letras [ ][ ] ;

22 ESTRUCTURAS DE DATOS Creación: identificador = new tipoDato [filas][columnas] ;CREAR identificador [filas][columnas] En Pseudocódigo En Java Ejemplos; - CREAR nombres [2][4] - CREAR sueldos [numAlu][numNot] - CREAR letras [4][total] - nombres = new String [2][10] ; - sueldos = new double [numAlu][numNot] ; - letras = new char [4][total] ; Arreglos tipo MATRIZ

23 ESTRUCTURAS DE DATOS Declaración y Creación: tipoDato identificador[][] = new tipoDato [filas][columnas] ; En Java Ejemplos; - String nombres = new String [2][10] ; - double sueldos = new double [numAlu][numNot] ; - char letras = new char [4][total] ; Arreglos tipo MATRIZ

24 ESTRUCTURAS DE DATOS Ingreso de datos: identificador [índice] = valor ; identificador [índice] = valor En PseudocódigoEn Java Ejemplos; Cuando utilizamos matrices podemos utilizar las estructuras lógicas de repetición para optimizar de manera significativa el proceso de ingreso de datos especialmente utilizando la estructura DESDE ó PARA dos veces. - nombres [0][0] = “Danae” - sueldos [1][x] = 100.5 - letras [y][x] = ‘J’ - nombres [0][0] = “Danae” ; - sueldos [1][x] = 100.5 ; - letras [y][x] = ‘J’ ; Arreglos tipo MATRIZ

25 Ejercicio Desarrollar una solución que permita ingresar y almacenar números enteros positivos en una matriz de 3 por 3 (a[][]) y permita mostrar la matriz 3 por 3 y la suma de los números ubicados en la diagonal principal. Consistencia la entrada de datos. Utilice matrices. ESTRUCTURAS DE DATOS

26 ENTRADA: numero[ ][ ] / SALIDA: numero[ ][ ], sumaDiaPri INICIO COMENTARIO “Declaración del arreglo” ENTERO i, j, numero[][], sumaDiaPri COMENTARIO “Creación del arreglo” CREAR numero[3][3], COMENTARIO “Ingreso de datos al arreglo numero[ ] [ ].” PARA (i=0, i<3, i=i+1) HACER // DESDE i =0 HASTA i < 3 PARA (j=0, j<3, j=j+1) HACER // DESDE j =0 HASTA j < 3 HACER LEER numero[i][j] MIENTRAS (numero[i][j]<0) FINPARA // FIN DESDE COMENTARIO “Mostrar Matriz y Cálculo de Suma” PARA (i=0, i<3, i=i+1) HACER // DESDE i =0 HASTA i < 3 PARA (j=0, j<3, j=j+1) HACER // DESDE j =0 HASTA j < 3 ESCRIBIR numero[i][j] SI (i=j) ENTONCES sumaDiaPri = sumaDiaPri + numero[i][j] FINSI FINPARA // FIN DESDE ESCRIBIR sumaDiaPri FIN Algoritmo VectorNotas

27

28

29 1.- Desarrollar una solución que permita ingresar y almacenar el precio de compra y el precio de venta de todos los artículos de una bodega (precio[][]). Calcular y mostrar la utilidad que se obtiene por la venta de cada artículo. Utilice matrices. 2.-Desarrollar una solución que permita ingresar y almacenar el código y el nombre de los empleados de una compañía (empleado[][]). Luego mostrar el código y nombre de los empleados de la compañía. Utilice matrices. 3.-Desarrollar una solución que permita ingresar y almacenar el promedio de prácticas, la nota del examen parcial y la nota del examen final de todos los alumnos de MBIII de la FIA (nota[][]). Calcular y mostrar el promedio que obtuvo cada alumno; Adicionalmente indicar el porcentaje de alumnos que aprobaron el curso. ESTRUCTURAS DE DATOS INTENTALO…!!!


Descargar ppt "Facultad de Ingeniería y Arquitectura Introducción a la Computación 2007 – I (14va Semana) Lunes 11 de Junio Ing. Juan José Montero Román."

Presentaciones similares


Anuncios Google