SlideShare una empresa de Scribd logo
1 de 4
Descargar para leer sin conexión
Pontificia Universidad Católica de Valparaíso
                                                                                                                                             Escuela de Ingeniería Informática

                       Pontificia Universidad Católica de Valparaíso
                                                                                                          Arrays Unidimensionales (Vectores)
                                   Facultad de Ingeniería
                             Escuela de Ingeniería Informática
                                                                                                         - Un array es un conjunto finito y ordenado de elementos homogéneos

                                                                                                         Cada elemento puede ser identificado                                Son del mismo tipo de datos

                                                                                                         - Un array unidimensional o vector es el tipo de array más simple
                           “Algoritmos y Arreglos”
                                                                                                          Arreglo notas

                                                                                                                             70       65        62         60           58         55     50

                                                                                                                           notas[1] = 70
                                              Asignatura
                                    INF 140 – Informática I
                                                                                                                           notas[2] = 65
                                                                                                                                                                        notas[n]
                                              Profesores
                                                                                                                           notas[3] = 62
                                Pamela Hermosilla Monckton
                                  Daniel Cabrera Paniagua                                                                  notas[4] = 60
                                                                                                                                                        Subíndice designa la posición
                                                                                                                                                        del elemento en el vector


Profesores                                                                                               Profesores
                                                                                                                                                                                         INF 140 – Informática I
PHM/DCP                                                                                                  PHM/DCP




                             Pontificia Universidad Católica de Valparaíso                                                             Pontificia Universidad Católica de Valparaíso
                                   Escuela de Ingeniería Informática                                                                         Escuela de Ingeniería Informática



 Arrays Unidimensionales (Vectores)                                                                       Arrays Unidimensionales (Vectores)
- Las operaciones que se pueden realizar con vectores son: asignación, lectura,
                                                                                                       sin array …                                         con array …
escritura, recorrido, actualización (añadir, borrar, insertar), ordenación, búsqueda.
                                                                                                       (muchas variables)
- La notación algorítmica que utilizaremos es la siguiente:                                                                                                   var
                                                                                                                                                                 real: nota[1..3], sum
                                                                                                        var                                                   …
<tipo de dato> : <nombre_del_arreglo> [1..dimension]                                                      real: nota1,nota2, nota3, sum                       desde i      1 hasta 3 hacer
                                                                                                                                                                  escribir(“nota ”,i, “ = ”)
entero: numero[1..100]
                                                                                                                      …                                           leer(nota[i])
                                                                                                                      escribir(“nota 1 = “)                    fin_desde
                                                                                                                      leer(nota1)
                                                                                                                      …                                         sum     0
                                                                                                                      sum      nota1 + nota2 + nota3            desde i   1 hasta 3 hacer
                                                                                                                                                                      sum    sum + nota[i]
                                                                                                                                                                fin_desde




Profesores                                                                                               Profesores
                                                                             INF 140 – Informática I                                                                                     INF 140 – Informática I
PHM/DCP                                                                                                  PHM/DCP




                             Pontificia Universidad Católica de Valparaíso                                                             Pontificia Universidad Católica de Valparaíso
                                   Escuela de Ingeniería Informática                                                                         Escuela de Ingeniería Informática



 Arrays Unidimensionales (Ejemplos)                                                                                                                  Ejemplo

                                                                                                        algoritmo ejemplo
                                                                                                        const
                                                                                                          max_alumnos = 50
     var
                                                                                                        var
             entero: temp[1..24],min, max, i
                                                                                                          entero: n, i
                                                                                                          real: prom, nota[1.. max_alumnos]
             real: prom, nota[1..45]
                                                                                                        inicio
                                                                                                           repetir
                                                                                                             escribir(“Ingrese la cantidad de alumnos. El máximo de alumnos es cincuenta”)
                     const                                                                                   leer(n)
                                                                                                           hasta_que ((n > 0) ∧ (n <= max_alumnos))
                       max_hora = 24
                       total = 45                                                                         escribir(“Ingresar notas de alumnos”)
                                                                                                                      1 hasta n hacer
                                                                                                          desde i
                     var
                                                                                                            escribir(“Nota alumno ”,i,“= ”)
                       entero: temp[1..max_hora],min, max, i                                                leer(nota[i])
                                                                                                          fin_desde
                       real: prom, nota[1..total]



Profesores                                                                                               Profesores
                                                                             INF 140 – Informática I                                                                                     INF 140 – Informática I
PHM/DCP                                                                                                  PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                              Pontificia Universidad Católica de Valparaíso
                                    Escuela de Ingeniería Informática                                                                          Escuela de Ingeniería Informática



                                                                                                         Arrays Unidimensionales (Vectores)
algoritmo malo
var
  entero: n, temp[1.. n]
inicio                                                                                                    Asignación:
  repetir
     escribir(“n = “)
                                                                                                         <nombre del array> [subindice]                <valor>
     leer(n)
   hasta_que n > 0

 desde i       1 hasta n hacer
                                                                                                          numero[2]           5
   …

                                                                                                          numero[x]           x+y
                                                          MAL                                             numero[a]           temp[5] + 2

                                                                                                         desde i           1 hasta 5 hacer
                                                                                                                       numero[i]         8
                                                                                                         fin_desde


 Profesores                                                                                             Profesores
                                                                              INF 140 – Informática I                                                                                    INF 140 – Informática I
 PHM/DCP                                                                                                PHM/DCP




                              Pontificia Universidad Católica de Valparaíso                                                              Pontificia Universidad Católica de Valparaíso
                                    Escuela de Ingeniería Informática                                                                          Escuela de Ingeniería Informática



  Arrays Unidimensionales (Vectores)                                                                     Arrays Unidimensionales (Vectores)

Lectura:                                                                                                Inserción:
                                                                                                         /* Se desea insertar nuevo_elemento en la posición p */
 leer (<nombre del array>[subindice])
                                                                                                         /* i corresponde al índice del penúltimo elemento*/
 leer (numero[4])
                                                                                                         mientras (i >= p) hacer
 leer (numero[x])
                                                                                                           autos[i+1]         autos[i]
 leer (numero[a+b])                                                                                        i         i–1
                                                                                                         fin_mientras
Escritura:
                                                                                                         autos[p]           nuevo_elemento
 escribir (<nombre del array>[subindice])

 escribir (“el número es: ”,numero[3])

 escribir (“el número es: ”,numero[a])




 Profesores                                                                                             Profesores
                                                                              INF 140 – Informática I                                                                                    INF 140 – Informática I
 PHM/DCP                                                                                                PHM/DCP




                              Pontificia Universidad Católica de Valparaíso                                                              Pontificia Universidad Católica de Valparaíso
                                    Escuela de Ingeniería Informática                                                                          Escuela de Ingeniería Informática



  Arrays Unidimensionales (Vectores)                                                                     Arrays Unidimensionales (Vectores)

                                                                                                          Imprimir - Escribir
 Eliminar:
                                                                                                        hasta el momento se ha asumido
  /* Se desea eliminar elemento en la posición j */
                                                                                                        que cada <escribir> escribe en una línea nueva
  /* n corresponde al índice del último elemento*/
                                                                                                        ...de ahora en adelante…
  desde (i      j) hasta n-1 hacer                                                                      se asume que todo es escrito en la misma línea
                                                                                                        saltar_linea    especifica que habrá un salto de línea
    autos[i]     autos[i+1]
  fin_desde

                                                                                                        desde i     1 hasta 4 hacer
                                                                                                                                                                    ana pedro luis felipe
                                                                                                          escribir(nombre[i],“ ”)
                                                                                                                                                                    22 19 26 21
                                                                                                        fin_desde
                                                                                                        saltar_linea
                                                                                                        desde i     1 hasta 4 hacer
                                                                                                           escribir(edad[i],“ ”)
                                                                                                        fin_desde




 Profesores                                                                                             Profesores
                                                                              INF 140 – Informática I                                                                                    INF 140 – Informática I
 PHM/DCP                                                                                                PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                                 Pontificia Universidad Católica de Valparaíso
                                            Escuela de Ingeniería Informática                                                                             Escuela de Ingeniería Informática



                                                   Ejercicio                                                       Algoritmo listar_numeros
                                                                                                                   Var
                                                                                                                     entero: contador, numeros[1.. 50]
   Desarrollar un algoritmo que permita recibir 50
                                                                                                                   Inicio
   números en un arreglo unidimensional, y luego los                                                                  contador <- 1
                                                                                                                      repetir
   liste.                                                                                                               escribir(“Ingrese un número”)
                                                                                                                        leer(numeros[contador])
                                                                                                                        contador <- contador + 1
   Desarrollar un algoritmo que permita recibir 50                                                                    hasta_que (contador = 51)
   números en un arreglo unidimensional, y luego los liste                                                             contador <- 1
   (en ambos sentidos).                                                                                                escribir(“Se listan los números ingresados”)
                                                                                                                       saltar_linea

   Desarrollar un algoritmo que permita recibir 50                                                                     repetir
                                                                                                                         escribir(numeros[contador])
   números en un arreglo unidimensional, y luego los liste                                                               saltar_linea
                                                                                                                         contador <- contador + 1
   (en ambos sentidos). Utilizar procedimientos.                                                                       hasta_que (contador = 51)

                                                                                                                   Fin
    Profesores                                                                                                     Profesores
                                                                                         INF 140 – Informática I                                                                                    INF 140 – Informática I
    PHM/DCP                                                                                                        PHM/DCP




                                      Pontificia Universidad Católica de Valparaíso                                                                 Pontificia Universidad Católica de Valparaíso
                                            Escuela de Ingeniería Informática                                                                             Escuela de Ingeniería Informática



     Arrays Bidimensionales (Matrices)                                                                              Arrays Bidimensionales (Matrices)
   Un array bidimensional se puede considerar como un vector de vectores. Es                                       Las operaciones que se pueden realizar con matrices son: asignación,
   por consiguiente, un conjunto de elementos homogéneos y ordenados en el que                                     lectura, escritura, recorrido, actualización (añadir, borrar, insertar),
   se necesita especificar dos subíndices para poder identificar cada elemento del                                 ordenación, búsqueda.
   array.                                                                                                          La notación algorítmica que utilizaremos es la siguiente:
                                                                                                                    <tipo de dato> : <nombre_del_arreglo> [1..dim_fila,1..dim_columna]
                  notas[1,1] notas[1,2]              ..............         notas[1,n]
                                                                                                                    real: venta[1..3,1..5]
                 notas[2,1] notas[2,2]                ............         notas[2,n]
Fila 1
                                                                                                                   Asignación:
                                                      .............
Fila 2
                 notas[i,1]   notas[i,2]              .............                                                 <nombre del array> [subindice fila,subindice columna]               <valor>
                                                                           notas[i,n]
                                                      .............
                                                                                                                    numero[1,1]         5
Fila i
                 notas[m,1] notas[m,2]               ..............        notas[m,n]
                                                                                                                    desde i       1 hasta 3 hacer
Fila m                                                                                                                desde j         1 hasta 5 hacer
                                                                                                                        numero[i,j]         0
                                                                                                                      fin_desde
                                                                      Columna n
     Columna 1          Columna 2                                                                                   fin_desde
    Profesores                                                                                                     Profesores
                                                                                         INF 140 – Informática I                                                                                    INF 140 – Informática I
    PHM/DCP                                                                                                        PHM/DCP




                                      Pontificia Universidad Católica de Valparaíso                                                                 Pontificia Universidad Católica de Valparaíso
                                            Escuela de Ingeniería Informática                                                                             Escuela de Ingeniería Informática



     Arrays Bidimensionales (Matrices)                                                                              Arrays Bidimensionales (Matrices)
           Llenado por filas
                                                                                                                   Lectura:
           desde i     1 hasta m hacer
                                                                                                                   leer (<nombre del array> [subindice fila, subindice columna])
             escribir(“datos fila ”,i)
             saltar_linea
                                                                                                                   leer (numero[2,4])
             desde j     1 hasta n hacer
                escribir(“dato posición ”,i, “ – ”,j, “ = ”)
                                                                                                                   leer (numero[a,b])
                leer(nota[i,j])
              fin_desde
           fin_desde
                                                                                                                   Escritura:
                          Llenado por columnas
                                                                                                                   escribir (<nombre del array>)[subindice fila, subindice columna])
                          desde a     1 hasta n hacer
                            escribir(“datos columna “,a)                                                           escribir (“la contidad es: ”, numero[6,7])
                            saltar_linea
                            desde b      1 hasta m hacer
                               escribir(“dato posición ”,b,“ –”,a, “ = ”)
                               leer(nota[b,a])
                             fin_desde
                          fin_desde
    Profesores                                                                                                     Profesores
                                                                                         INF 140 – Informática I                                                                                    INF 140 – Informática I
    PHM/DCP                                                                                                        PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                 Pontificia Universidad Católica de Valparaíso
                       Escuela de Ingeniería Informática                                                             Escuela de Ingeniería Informática



                              Ejercicio                                                                                     Ejercicio

Uno de los restorantes más importantes del país se                                         1) Ingreso de los platos ofrecidos al público, para ello debe
                                                                                           almacenar el nombre del plato, sus ingredientes y el precio. Haga
encuentra en un proceso de renovación tecnológica,
                                                                                           un bosquejo de los arrays utilizados describiendo claramente los
por ello requiere de un software que gestione los
                                                                                           datos que se almacenan en ellos.
distintos platos que tiene al servicio de sus clientes. El
gerente de este establecimiento tiene plena confianza                                      2) Eliminación de un plato elegido por el usuario. Suponga que no
en los estudiantes de la PUCV, razón por la cual le ha                                     se ingresan platos repetidos.
solicitado a los alumnos de INF-140 que construyan un
                                                                                           3) Cuantos platos tienen al menos 3 ingredientes en común. Los 3
algoritmo que realice lo siguiente:
                                                                                           ingredientes deben ser ingresados por el usuario.

                                                                                           4) Cuantos platos tienen “N” ingredientes. “N” debe ser ingresado
                                                                                           por el usuario.


Profesores                                                                                  Profesores
                                                                 INF 140 – Informática I                                                                       INF 140 – Informática I
PHM/DCP                                                                                     PHM/DCP




                 Pontificia Universidad Católica de Valparaíso
                       Escuela de Ingeniería Informática




       se pueden definir & usar …

    arreglos multidimensionales
                  ¿?

                                      ☺

Profesores
                                                                 INF 140 – Informática I
PHM/DCP

Más contenido relacionado

Más de Daniel Barraza

[Pauta] [Inf 140] Control I
[Pauta] [Inf 140]   Control I[Pauta] [Inf 140]   Control I
[Pauta] [Inf 140] Control IDaniel Barraza
 
[Pauta] [Inf 140] Certamen Ii
[Pauta] [Inf 140]   Certamen Ii[Pauta] [Inf 140]   Certamen Ii
[Pauta] [Inf 140] Certamen IiDaniel Barraza
 
Pauta Guia 1(1) Bloc De Notas
Pauta Guia 1(1)   Bloc De NotasPauta Guia 1(1)   Bloc De Notas
Pauta Guia 1(1) Bloc De NotasDaniel Barraza
 
[Pauta] Trabajo Grupal
[Pauta] Trabajo Grupal[Pauta] Trabajo Grupal
[Pauta] Trabajo GrupalDaniel Barraza
 
[Inf 140] Representacion Interna De Datos (1 X Hoja)
[Inf 140] Representacion Interna De Datos (1 X Hoja)[Inf 140] Representacion Interna De Datos (1 X Hoja)
[Inf 140] Representacion Interna De Datos (1 X Hoja)Daniel Barraza
 
[Inf 140] Programacion De Presentaciones
[Inf 140] Programacion De Presentaciones[Inf 140] Programacion De Presentaciones
[Inf 140] Programacion De PresentacionesDaniel Barraza
 
[Inf 140] Procedimientos Y Funciones (4 X Hoja)
[Inf 140] Procedimientos Y Funciones (4 X Hoja)[Inf 140] Procedimientos Y Funciones (4 X Hoja)
[Inf 140] Procedimientos Y Funciones (4 X Hoja)Daniel Barraza
 
[Inf 140] Procedimientos Y Funciones (1 X Hoja)
[Inf 140] Procedimientos Y Funciones (1 X Hoja)[Inf 140] Procedimientos Y Funciones (1 X Hoja)
[Inf 140] Procedimientos Y Funciones (1 X Hoja)Daniel Barraza
 
[Inf 140] Introduccion A Los Algoritmos (6 Diap X Hoja)
[Inf 140]   Introduccion A Los Algoritmos (6 Diap X Hoja)[Inf 140]   Introduccion A Los Algoritmos (6 Diap X Hoja)
[Inf 140] Introduccion A Los Algoritmos (6 Diap X Hoja)Daniel Barraza
 
[Inf 140] Introduccion A Los Algoritmos (4 Diap X Hoja)
[Inf 140]   Introduccion A Los Algoritmos (4 Diap X Hoja)[Inf 140]   Introduccion A Los Algoritmos (4 Diap X Hoja)
[Inf 140] Introduccion A Los Algoritmos (4 Diap X Hoja)Daniel Barraza
 
[Inf 140] Introduccion A Los Algoritmos (3 Diap X Hoja)
[Inf 140]   Introduccion A Los Algoritmos (3 Diap X Hoja)[Inf 140]   Introduccion A Los Algoritmos (3 Diap X Hoja)
[Inf 140] Introduccion A Los Algoritmos (3 Diap X Hoja)Daniel Barraza
 

Más de Daniel Barraza (20)

Lista
ListaLista
Lista
 
Lista
ListaLista
Lista
 
[Pauta] [Inf 140] Control I
[Pauta] [Inf 140]   Control I[Pauta] [Inf 140]   Control I
[Pauta] [Inf 140] Control I
 
[Pauta] [Inf 140] Certamen Ii
[Pauta] [Inf 140]   Certamen Ii[Pauta] [Inf 140]   Certamen Ii
[Pauta] [Inf 140] Certamen Ii
 
Pauta Control1
Pauta Control1Pauta Control1
Pauta Control1
 
Ayudantia 1
Ayudantia 1Ayudantia 1
Ayudantia 1
 
Pauta Guia 1(1) Bloc De Notas
Pauta Guia 1(1)   Bloc De NotasPauta Guia 1(1)   Bloc De Notas
Pauta Guia 1(1) Bloc De Notas
 
Suma Numeros
Suma NumerosSuma Numeros
Suma Numeros
 
Pauta Guia 3
Pauta Guia 3Pauta Guia 3
Pauta Guia 3
 
Inf 140 Guia3 2008 01
Inf 140   Guia3 2008 01Inf 140   Guia3 2008 01
Inf 140 Guia3 2008 01
 
Inf 140 Guia2 2008 01
Inf 140   Guia2 2008 01Inf 140   Guia2 2008 01
Inf 140 Guia2 2008 01
 
Ejercicio Extra 1
Ejercicio Extra 1Ejercicio Extra 1
Ejercicio Extra 1
 
[Pauta] Trabajo Grupal
[Pauta] Trabajo Grupal[Pauta] Trabajo Grupal
[Pauta] Trabajo Grupal
 
[Inf 140] Representacion Interna De Datos (1 X Hoja)
[Inf 140] Representacion Interna De Datos (1 X Hoja)[Inf 140] Representacion Interna De Datos (1 X Hoja)
[Inf 140] Representacion Interna De Datos (1 X Hoja)
 
[Inf 140] Programacion De Presentaciones
[Inf 140] Programacion De Presentaciones[Inf 140] Programacion De Presentaciones
[Inf 140] Programacion De Presentaciones
 
[Inf 140] Procedimientos Y Funciones (4 X Hoja)
[Inf 140] Procedimientos Y Funciones (4 X Hoja)[Inf 140] Procedimientos Y Funciones (4 X Hoja)
[Inf 140] Procedimientos Y Funciones (4 X Hoja)
 
[Inf 140] Procedimientos Y Funciones (1 X Hoja)
[Inf 140] Procedimientos Y Funciones (1 X Hoja)[Inf 140] Procedimientos Y Funciones (1 X Hoja)
[Inf 140] Procedimientos Y Funciones (1 X Hoja)
 
[Inf 140] Introduccion A Los Algoritmos (6 Diap X Hoja)
[Inf 140]   Introduccion A Los Algoritmos (6 Diap X Hoja)[Inf 140]   Introduccion A Los Algoritmos (6 Diap X Hoja)
[Inf 140] Introduccion A Los Algoritmos (6 Diap X Hoja)
 
[Inf 140] Introduccion A Los Algoritmos (4 Diap X Hoja)
[Inf 140]   Introduccion A Los Algoritmos (4 Diap X Hoja)[Inf 140]   Introduccion A Los Algoritmos (4 Diap X Hoja)
[Inf 140] Introduccion A Los Algoritmos (4 Diap X Hoja)
 
[Inf 140] Introduccion A Los Algoritmos (3 Diap X Hoja)
[Inf 140]   Introduccion A Los Algoritmos (3 Diap X Hoja)[Inf 140]   Introduccion A Los Algoritmos (3 Diap X Hoja)
[Inf 140] Introduccion A Los Algoritmos (3 Diap X Hoja)
 

Último

Catalogo-Virtual-Especias-Ibi_castellano
Catalogo-Virtual-Especias-Ibi_castellanoCatalogo-Virtual-Especias-Ibi_castellano
Catalogo-Virtual-Especias-Ibi_castellanovictorhugoerguetamal3
 
El Ego - Ramiro Nicolás Nordmann Castañeda
El Ego - Ramiro Nicolás Nordmann CastañedaEl Ego - Ramiro Nicolás Nordmann Castañeda
El Ego - Ramiro Nicolás Nordmann CastañedaCynthiaSaid2
 
CUIDADOS DE ENFERMERIA EN LA ALIMENTACION.pptx
CUIDADOS DE ENFERMERIA EN LA ALIMENTACION.pptxCUIDADOS DE ENFERMERIA EN LA ALIMENTACION.pptx
CUIDADOS DE ENFERMERIA EN LA ALIMENTACION.pptxangelicacardales1
 
Mapa Conceptual LAS AREAS DE LA VIDA (8) (1).pdf
Mapa Conceptual LAS AREAS DE LA VIDA (8) (1).pdfMapa Conceptual LAS AREAS DE LA VIDA (8) (1).pdf
Mapa Conceptual LAS AREAS DE LA VIDA (8) (1).pdfJesusIvan28
 
La medicina que el cielo aprueba.pdf............................................
La medicina que el cielo aprueba.pdf............................................La medicina que el cielo aprueba.pdf............................................
La medicina que el cielo aprueba.pdf............................................fernandojesusfatecha
 
libro-manos-que-curamn-pdf.pdf manos que curan
libro-manos-que-curamn-pdf.pdf manos que curanlibro-manos-que-curamn-pdf.pdf manos que curan
libro-manos-que-curamn-pdf.pdf manos que curansanzmar360
 
Salmo 119: 1-56-Es un acróstico, pero un acróstico un poco diferente de lo qu...
Salmo 119: 1-56-Es un acróstico, pero un acróstico un poco diferente de lo qu...Salmo 119: 1-56-Es un acróstico, pero un acróstico un poco diferente de lo qu...
Salmo 119: 1-56-Es un acróstico, pero un acróstico un poco diferente de lo qu...juancarlossantamaria27
 
pdf-padres-obedientes-hijos-tiranos_compress.pdf
pdf-padres-obedientes-hijos-tiranos_compress.pdfpdf-padres-obedientes-hijos-tiranos_compress.pdf
pdf-padres-obedientes-hijos-tiranos_compress.pdfVictorGarzaRodarte1
 
3. Marzo Mandato DNC_2024_Comunicado para ver
3. Marzo Mandato DNC_2024_Comunicado para ver3. Marzo Mandato DNC_2024_Comunicado para ver
3. Marzo Mandato DNC_2024_Comunicado para verjersoneduardocc
 

Último (9)

Catalogo-Virtual-Especias-Ibi_castellano
Catalogo-Virtual-Especias-Ibi_castellanoCatalogo-Virtual-Especias-Ibi_castellano
Catalogo-Virtual-Especias-Ibi_castellano
 
El Ego - Ramiro Nicolás Nordmann Castañeda
El Ego - Ramiro Nicolás Nordmann CastañedaEl Ego - Ramiro Nicolás Nordmann Castañeda
El Ego - Ramiro Nicolás Nordmann Castañeda
 
CUIDADOS DE ENFERMERIA EN LA ALIMENTACION.pptx
CUIDADOS DE ENFERMERIA EN LA ALIMENTACION.pptxCUIDADOS DE ENFERMERIA EN LA ALIMENTACION.pptx
CUIDADOS DE ENFERMERIA EN LA ALIMENTACION.pptx
 
Mapa Conceptual LAS AREAS DE LA VIDA (8) (1).pdf
Mapa Conceptual LAS AREAS DE LA VIDA (8) (1).pdfMapa Conceptual LAS AREAS DE LA VIDA (8) (1).pdf
Mapa Conceptual LAS AREAS DE LA VIDA (8) (1).pdf
 
La medicina que el cielo aprueba.pdf............................................
La medicina que el cielo aprueba.pdf............................................La medicina que el cielo aprueba.pdf............................................
La medicina que el cielo aprueba.pdf............................................
 
libro-manos-que-curamn-pdf.pdf manos que curan
libro-manos-que-curamn-pdf.pdf manos que curanlibro-manos-que-curamn-pdf.pdf manos que curan
libro-manos-que-curamn-pdf.pdf manos que curan
 
Salmo 119: 1-56-Es un acróstico, pero un acróstico un poco diferente de lo qu...
Salmo 119: 1-56-Es un acróstico, pero un acróstico un poco diferente de lo qu...Salmo 119: 1-56-Es un acróstico, pero un acróstico un poco diferente de lo qu...
Salmo 119: 1-56-Es un acróstico, pero un acróstico un poco diferente de lo qu...
 
pdf-padres-obedientes-hijos-tiranos_compress.pdf
pdf-padres-obedientes-hijos-tiranos_compress.pdfpdf-padres-obedientes-hijos-tiranos_compress.pdf
pdf-padres-obedientes-hijos-tiranos_compress.pdf
 
3. Marzo Mandato DNC_2024_Comunicado para ver
3. Marzo Mandato DNC_2024_Comunicado para ver3. Marzo Mandato DNC_2024_Comunicado para ver
3. Marzo Mandato DNC_2024_Comunicado para ver
 

ArraysUnidimensionales

  • 1. Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Pontificia Universidad Católica de Valparaíso Arrays Unidimensionales (Vectores) Facultad de Ingeniería Escuela de Ingeniería Informática - Un array es un conjunto finito y ordenado de elementos homogéneos Cada elemento puede ser identificado Son del mismo tipo de datos - Un array unidimensional o vector es el tipo de array más simple “Algoritmos y Arreglos” Arreglo notas 70 65 62 60 58 55 50 notas[1] = 70 Asignatura INF 140 – Informática I notas[2] = 65 notas[n] Profesores notas[3] = 62 Pamela Hermosilla Monckton Daniel Cabrera Paniagua notas[4] = 60 Subíndice designa la posición del elemento en el vector Profesores Profesores INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Arrays Unidimensionales (Vectores) Arrays Unidimensionales (Vectores) - Las operaciones que se pueden realizar con vectores son: asignación, lectura, sin array … con array … escritura, recorrido, actualización (añadir, borrar, insertar), ordenación, búsqueda. (muchas variables) - La notación algorítmica que utilizaremos es la siguiente: var real: nota[1..3], sum var … <tipo de dato> : <nombre_del_arreglo> [1..dimension] real: nota1,nota2, nota3, sum desde i 1 hasta 3 hacer escribir(“nota ”,i, “ = ”) entero: numero[1..100] … leer(nota[i]) escribir(“nota 1 = “) fin_desde leer(nota1) … sum 0 sum nota1 + nota2 + nota3 desde i 1 hasta 3 hacer sum sum + nota[i] fin_desde Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Arrays Unidimensionales (Ejemplos) Ejemplo algoritmo ejemplo const max_alumnos = 50 var var entero: temp[1..24],min, max, i entero: n, i real: prom, nota[1.. max_alumnos] real: prom, nota[1..45] inicio repetir escribir(“Ingrese la cantidad de alumnos. El máximo de alumnos es cincuenta”) const leer(n) hasta_que ((n > 0) ∧ (n <= max_alumnos)) max_hora = 24 total = 45 escribir(“Ingresar notas de alumnos”) 1 hasta n hacer desde i var escribir(“Nota alumno ”,i,“= ”) entero: temp[1..max_hora],min, max, i leer(nota[i]) fin_desde real: prom, nota[1..total] Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 2. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Arrays Unidimensionales (Vectores) algoritmo malo var entero: n, temp[1.. n] inicio Asignación: repetir escribir(“n = “) <nombre del array> [subindice] <valor> leer(n) hasta_que n > 0 desde i 1 hasta n hacer numero[2] 5 … numero[x] x+y MAL numero[a] temp[5] + 2 desde i 1 hasta 5 hacer numero[i] 8 fin_desde Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Arrays Unidimensionales (Vectores) Arrays Unidimensionales (Vectores) Lectura: Inserción: /* Se desea insertar nuevo_elemento en la posición p */ leer (<nombre del array>[subindice]) /* i corresponde al índice del penúltimo elemento*/ leer (numero[4]) mientras (i >= p) hacer leer (numero[x]) autos[i+1] autos[i] leer (numero[a+b]) i i–1 fin_mientras Escritura: autos[p] nuevo_elemento escribir (<nombre del array>[subindice]) escribir (“el número es: ”,numero[3]) escribir (“el número es: ”,numero[a]) Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Arrays Unidimensionales (Vectores) Arrays Unidimensionales (Vectores) Imprimir - Escribir Eliminar: hasta el momento se ha asumido /* Se desea eliminar elemento en la posición j */ que cada <escribir> escribe en una línea nueva /* n corresponde al índice del último elemento*/ ...de ahora en adelante… desde (i j) hasta n-1 hacer se asume que todo es escrito en la misma línea saltar_linea especifica que habrá un salto de línea autos[i] autos[i+1] fin_desde desde i 1 hasta 4 hacer ana pedro luis felipe escribir(nombre[i],“ ”) 22 19 26 21 fin_desde saltar_linea desde i 1 hasta 4 hacer escribir(edad[i],“ ”) fin_desde Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 3. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Ejercicio Algoritmo listar_numeros Var entero: contador, numeros[1.. 50] Desarrollar un algoritmo que permita recibir 50 Inicio números en un arreglo unidimensional, y luego los contador <- 1 repetir liste. escribir(“Ingrese un número”) leer(numeros[contador]) contador <- contador + 1 Desarrollar un algoritmo que permita recibir 50 hasta_que (contador = 51) números en un arreglo unidimensional, y luego los liste contador <- 1 (en ambos sentidos). escribir(“Se listan los números ingresados”) saltar_linea Desarrollar un algoritmo que permita recibir 50 repetir escribir(numeros[contador]) números en un arreglo unidimensional, y luego los liste saltar_linea contador <- contador + 1 (en ambos sentidos). Utilizar procedimientos. hasta_que (contador = 51) Fin Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Arrays Bidimensionales (Matrices) Arrays Bidimensionales (Matrices) Un array bidimensional se puede considerar como un vector de vectores. Es Las operaciones que se pueden realizar con matrices son: asignación, por consiguiente, un conjunto de elementos homogéneos y ordenados en el que lectura, escritura, recorrido, actualización (añadir, borrar, insertar), se necesita especificar dos subíndices para poder identificar cada elemento del ordenación, búsqueda. array. La notación algorítmica que utilizaremos es la siguiente: <tipo de dato> : <nombre_del_arreglo> [1..dim_fila,1..dim_columna] notas[1,1] notas[1,2] .............. notas[1,n] real: venta[1..3,1..5] notas[2,1] notas[2,2] ............ notas[2,n] Fila 1 Asignación: ............. Fila 2 notas[i,1] notas[i,2] ............. <nombre del array> [subindice fila,subindice columna] <valor> notas[i,n] ............. numero[1,1] 5 Fila i notas[m,1] notas[m,2] .............. notas[m,n] desde i 1 hasta 3 hacer Fila m desde j 1 hasta 5 hacer numero[i,j] 0 fin_desde Columna n Columna 1 Columna 2 fin_desde Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Arrays Bidimensionales (Matrices) Arrays Bidimensionales (Matrices) Llenado por filas Lectura: desde i 1 hasta m hacer leer (<nombre del array> [subindice fila, subindice columna]) escribir(“datos fila ”,i) saltar_linea leer (numero[2,4]) desde j 1 hasta n hacer escribir(“dato posición ”,i, “ – ”,j, “ = ”) leer (numero[a,b]) leer(nota[i,j]) fin_desde fin_desde Escritura: Llenado por columnas escribir (<nombre del array>)[subindice fila, subindice columna]) desde a 1 hasta n hacer escribir(“datos columna “,a) escribir (“la contidad es: ”, numero[6,7]) saltar_linea desde b 1 hasta m hacer escribir(“dato posición ”,b,“ –”,a, “ = ”) leer(nota[b,a]) fin_desde fin_desde Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 4. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Ejercicio Ejercicio Uno de los restorantes más importantes del país se 1) Ingreso de los platos ofrecidos al público, para ello debe almacenar el nombre del plato, sus ingredientes y el precio. Haga encuentra en un proceso de renovación tecnológica, un bosquejo de los arrays utilizados describiendo claramente los por ello requiere de un software que gestione los datos que se almacenan en ellos. distintos platos que tiene al servicio de sus clientes. El gerente de este establecimiento tiene plena confianza 2) Eliminación de un plato elegido por el usuario. Suponga que no en los estudiantes de la PUCV, razón por la cual le ha se ingresan platos repetidos. solicitado a los alumnos de INF-140 que construyan un 3) Cuantos platos tienen al menos 3 ingredientes en común. Los 3 algoritmo que realice lo siguiente: ingredientes deben ser ingresados por el usuario. 4) Cuantos platos tienen “N” ingredientes. “N” debe ser ingresado por el usuario. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática se pueden definir & usar … arreglos multidimensionales ¿? ☺ Profesores INF 140 – Informática I PHM/DCP