Está en la página 1de 6

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

(Universidad del Perú, DECANA DE AMÉRICA)

FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA

ESCUELA PROFESIONAL DE INGENIERÍA DE SOFTWARE

Estructura de Datos: Práctica Dirigida 02

Código: Apellidos y nombres:


● 21200259: Saavedra Monterrey, Max Bruno

Docente:
Pro Concepción Luzmila
LIMA-PERÚ
2022

Fecha de Entrega: Semana 4


PRACTICA N º 02 DE ESTRUCTURA DE DATOS
I En los siguientes realizar el pseudocodigo de un arreglo unidimensional:
a) Crear un arreglo unidimensional
Accion Carga_Arreglo (A, N)
Inicio
Para i desde 1 hasta N
Leer dato
A(i)⃪ dato
FinPara
Fin

b) Mostrar el arreglo
Accion Busca (A, N)
Inicio
Leer I
Si (i>N)
Escribir” Indice fuera de rango”
Sino
Escribir A(I)
Finsi
Fin

c) Recorrido de un arreglo unidimensional


Accion Recorre (A, N)
Inicio
Para I desde 1 hasta N
dato ⃪ A (i)
Escribir dato
FinPara
Fin

d) Inserción de un elemento en una determinada posicion y dar su valor

Accion Insertar_Elemento(A, N, pos, valor)


Inicio
Si (pos>N o pos<=0) //posición fuera de rango
Escribir "Posición fuera de rango"
Sino
//desplazar los elementos a la derecha para
hacer espacio
Para i desde N hasta pos+1 con paso -1
A(i)⃪A(i-1)
FinPara
A(pos)⃪valor //insertar el valor en la posición indicada
N⃪N+1 //incrementar el tamaño del arreglo
Escribir "Elemento insertado con éxito en la posición ", pos, " con valor ", valor
FinSi
Fin
e) Inserción de un valor en un areglo unidimensional y dar su posición

Accion Insertar_Valor(A, N, valor)


Inicio
Encontrado⃪falso
Para i desde 1 hasta N con paso 1
Si (A(i)==valor)
Escribir "El valor ya existe en la
posición ", i
Encontrado⃪verdadero
FinSi
FinPara
Si (Encontrado==falso)
N⃪N+1 //incrementar el tamaño del arreglo
A(N)⃪valor //insertar el valor en la última posición
Escribir "El valor ", valor, " ha sido insertado en la posición ", N
FinSi
Fin

f) Eliminar el valor dado en un arreglo unidimensional y dar la posicion del


elemento eliminado

Accion Eliminar_Valor(A, N, valor)


Inicio
Encontrado⃪falso
Para i desde 1 hasta N con paso 1
Si (A(i)==valor)
Para j desde i hasta N-1 con paso 1
A(j)⃪A(j+1) //desplazar los elementos a la izquierda para eliminar el
valor
FinPara
N⃪N-1 //disminuir el tamaño del arreglo
Escribir "El valor ", valor, " ha sido eliminado de la posición ", i
Encontrado⃪verdadero
FinSi
FinPara
Si (Encontrado==falso)
Escribir "El valor no existe en el arreglo"
FinSi
Fin

g) Eliminar un elemento del areglo unidimensional dado una posición y dar


el valor del elemento eliminado.

Accion Eliminar_Posicion(A, N, pos)


Inicio
Si (pos>N o pos<=0) //posición fuera de rango
Escribir "Posición fuera de rango"
Sino
valor⃪A(pos) //almacenar el valor del elemento a eliminar
Para i desde pos hasta N-1 con paso 1
A(i)⃪A(i+1) //desplazar los elementos a la izquierda para eliminar el
elemento
FinPara
N⃪N-1 //disminuir el tamaño del arreglo
Escribir "El elemento de valor ", valor, " ha sido eliminado de la
posición ", pos
FinSi
Fin

h)Ordenar un arreglo unidimensional aplicando el metodo de la burbuja en


orden ascendente y descendente

Accion burbuja (entero v[], entero n)


Inicio
Para I desde 1 hasta n-1
Para j desde 1 hasta n
Si (v[j]>v[j+1])
Aux=v[j]
v[j]= v[j+1]
v[j+1]=aux
Finsi
FinPara
FinPara
Fin

i)Busqueda de un valor en un arreglo unidimensional, dar la posicion del


elemento buscado.

Accion BusquedaValor (A, N)


    TAMANIO=5
    dimension a1(TAMANIO) //se define el tamaño del arreglo
     
    a1(0)=2
    a1(1)=5
    a1(2)=4
    a1(3)=3
    a1(4)=2
     
    //Introducimos el numero a buscar
    Escribir "Inserta elemento a buscar"
    leer numeroBusc
     
    //Usado para marcar si existe o no el elemento buscado
    encontrado = falso
     
    //Recorremos el arreglo buscando los elementos
    Para i<-0 Hasta TAMANIO-1 Con Paso 1 Hacer
       Si numeroBusc = a1(i) Entonces
        Escribir "Se ha encontrado el numero ",numeroBuscado," en la posicion ",i
            encontrado = verdadero //Ya existe algun elemento
        Fin Si
    Fin Para
    //Sino encuentro nada, muestro un mensaje
    Si no encontrado Entonces
        Escribir "No se ha encontrado ningun elemento"
    Fin Si
FinProceso

j) Busqueda de una posicion de un arreglo unidimensional y dar el valor del


elemento buscado.

Accion BúsquedaBin(A, N, Val, Pos)


Inicio
IZQ= i
DER=n
Mientras (DER≥IZQ)
X=(IZO + DER)/2
Si Val= A[X] clave
Pos =x
Sino
Si Val = A[X] clave
DER=X-IZQ
Sino
IZQ=X+IZQ
Finsi
Finsi
FinMientras
Fin

n) Salvar un arreglo en una Fila Secuencial

Accion SalvarMatriz (A, N, F)


Inicio
Primer (F)
Poner (F, N)
Para i desde 1 hasta M
Para j desde 1 hasta N
V ⃪ A[i][j]
Poner (F, V)
FinPara
FinPara
Marcar (F, ⊥)
Fin

o) Recuperar un arreglo desde una Fila Secuencial


Accion Recuperar(F, A, N)
Inicio
Primer (F)
Tomar(F, V)
Si ( ¬ ultimo (F))
N=V
Finsi
Tomar(F, V)
I= 1
J=0
Mientras (¬ultimo(F))
J= J+1
A[i][j] ⃪ V
Tomar (F, V)
Si (j mod N=0)
I=i+1
J=0
Finsi
FinMientras
M=1
Fin

También podría gustarte