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.

Slides:



Advertisements
Presentaciones similares
Arreglos Unidimensionales y Bidimensionales ESTRUCTURAS DE DATOS I
Advertisements

Programación Orientada a Objetos (con Java)
Curso de Java Capitulo 6: Cadenas y Arrays Profesor:
ESTRUCTURA DE DATOS Unidad 01 MATRICES.
Instrucciones Básicas Entrada de Información
Fundamentos de Programación I Agradecimientos al Ing. Namuel Solórzano Peralta por el contenido de esta presentación.
Facultad de Ingeniería y Arquitectura Introducción a la Computación 2006 – II (4ta Semana) Lunes 28 de Agosto del 2006 Juan José Montero Román.
Programación I Teoría III
Las estructuras de arreglos fueron usadas en las primeras computadoras digitales, cuando la programación se hacía todavía en lenguaje máquina, para tablas.
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Juan José Montero Román. Sesión 6 - Uso de estructuras.
Algoritmo y Estructura de Datos I
ESTRUCTURAS DE SECUENCIA
Introducción a la Computación
Juan José Montero Román.
Algoritmo y Estructura de Datos I
Estructuras de datos tipo arreglo
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Juan José Montero Román. Sesión 15 - Archivos.
Algoritmo y Estructura de Datos I
Algoritmo y Estructura de Datos I
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. Sesión 8.
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Juan José Montero Román. Sesión 6.
Algoritmo y Estructura de Datos I
Introducción a la Computación (7ma Semana) Lunes 16 de Abril del 2007
Introducción a la Computación (IC) I Facultad de Ingeniería y Arquitectura Juan José Montero Román.
Introducción a la Computación
Facultad de Ingeniería y Arquitectura Introducción a la Computación 2007 – I (11va Semana) Lunes 14 de Mayo Ing. Juan José Montero Román.
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. Sesión 11.
Algoritmo y Estructura de Datos I
Introducción a la Computación (8va Semana) Lunes 23 de Abril del 2007
Algoritmo y Estructura de Datos I
Algoritmo y Estructura de Datos I
ARREGLOS Estructuras de datos.
INTRODUCCIÓN A LA COMPUTACIÓN 14va Semana – 24va Sesión Miércoles 01 de Junio del 2005 Juan José Montero Román
INTRODUCCIÓN A LA COMPUTACIÓN
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. Sesión 3.
Facultad de Ingeniería y Arquitectura Introducción a la Computación 2006 – II (8va Semana) Lunes 25 de Setiembre del 2006 Juan José Montero Román.
Introducción a la Computación
Facultad de Ingeniería y Arquitectura Introducción a la Computación 2006 – II (7ma Semana) Lunes 18 de Setiembre del 2006 Juan José Montero Román.
Herramientas para el acceso directo a memoria en C++
String o Cadenas Prof. Gonzalo Pastor. Cadenas o String ► En C, una cadena o texto se define como un vector de caracteres de longitud determinada que.
Vectores en java.
Arreglos: Vectores en JAVA
Curso de Computación.  Manipular una colección de datos usando vectores  Declarar y utilizar un vector de tipos de datos primitivos en la implementación.
POO Java Módulo 3 Elementos de programas Identificadores
INTRODUCCIÓN A LA COMPUTACIÓN
INTRODUCCIÓN A LA COMPUTACIÓN 12va Semana – 19va Sesión Miércoles 18 de Mayo del 2005 Juan José Montero Román
Introducción a la Computación
Departamento de Informática Universidad Técnica Federico Santa María Capítulo 2 “Subprogramas/Funciones - Arreglos” Arreglos-Arrays.
INTRODUCCIÓN A LA COMPUTACIÓN 13va Semana – 21va Sesión Miércoles 25 de Mayo del 2005 Juan José Montero Román
1 3Tablas o matrices 3.1. Concepto Las tablas corresponden al concepto matemático de matriz. Todos sus elementos deben ser del mismo tipo y se accede a.
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
INTRODUCCIÓN A LA COMPUTACIÓN
METODOLOGÍA DE LA PROGRAMACIÓN
Metodología de Programación Ayudantía 2 lelagos.ublog.cl 2009.
75.40 Algoritmos y Programación I
Matrices y Funciones “En C” Semestre de Otoño 2006 Claudio Gutiérrez-Soto.
Matrices Departamento de Computación Escuela de Ingeniería de Sistemas
Vectores y Matrices.
Matrices Prof. Flor Narciso Departamento de Computación
Registros Prof. Flor Narciso Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes.
Capitulo 4 Arreglos o Arrays Unidimensionales Bidimensionales Strings
Arreglos: Vectores Departamento de Computación
Metodología de Programación Clase 1 Leonel Lagos V
COMPUTACIÓN I TEMA 9. Constructor de tipos: struct Definición de nuevos tipos: typedef. Arreglos de estructuras Prof. Mireya Morales.
Universidad Domingo Savio Facultad de Ciencias y Tecnología de la Información Carrera Ingeniería en Redes y Telecomunicaciones Materia : Programación I.
Arreglos: Vectores Prof. Flor Narciso Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes.
ARREGLOS. La sintaxis para declarar e inicializar un array será: Tipo_de_variable[ ] Nombre_del_array = new Tipo_de_variable[dimensión]; También podemos.
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ Facultad de Ingeniería de Sistemas Computacionales Programa de Lic. en Informática Educativa Computación.
UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO FACULTAD DE INGENIERÍA COORDINACIÓN DE MATERIAS PROPEDÉUTICAS INGENIERÍA EN SISTEMAS ENERGÉTICOS SUSTENTABLES.
ARREGLOS.
Transcripción de la presentación:

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.

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

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

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:

ARREGLOS Tipos: números tamaño=4 Arreglos unidimensionales o vectores Representación: Arreglos bidimensionales o matrices Representación: números filas=2, columnas= ESTRUCTURAS DE DATOS : ARREGLOS

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

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

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] = letras [x] = ‘J’ - nombres [0 ] = “Danae” ; - sueldos [1] = ; - letras [x] = ‘J’ ; ARREGLOS TIPO VECTOR En Pseudocódigo En Java

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

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

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

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

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.

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.

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ú.

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.

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

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

ESTRUCTURAS DE DATOS Arreglos Tipos: números tamaño=4 Arreglos unidimensionales o vectores Representación: Arreglos bidimensionales o MATRICES Representación: números filas=2, columnas=

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 [ ][ ] ;

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

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

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] = letras [y][x] = ‘J’ - nombres [0][0] = “Danae” ; - sueldos [1][x] = ; - letras [y][x] = ‘J’ ; Arreglos tipo MATRIZ

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

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

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…!!!