PDF de programación - Algoritmos - Ejemplos resueltos

Imágen de pdf Algoritmos - Ejemplos resueltos

Algoritmos - Ejemplos resueltosgráfica de visualizaciones

Publicado el 25 de Junio del 2018
3.789 visualizaciones desde el 25 de Junio del 2018
292,9 KB
4 paginas
Creado hace 6a (05/06/2017)
Ejemplo 1:
Dado el siguiente trozo de algoritmo analice y determine la validez de cada llamada a un
subalgoritmo.
Justifique cada una de sus respuestas.
SUBALGORITMO "UNO" (in x: entero, inout y: real)
SUBALGORITMO "DOS" (out x: lógico, in y: entero)
SUBALGORITMO "TRES" (inout x: entero)
:
ALGORITMO "PRINCIPAL"
COMENZAR
a: entero
b: real
c: lógico
:
DOS (a; b + 3)
TRES (x)
UNO (b/2.0, a)
TRES (4,c)
UNO (a, 2.3)
DOS(c, y)
Uno (a, b)
:
FIN


 Primera llamada: DOS (a; b + 3) No es válida ya que a es de tipo entero y el primer
parámetro que pide DOS debe ser de tipo lógico. Por otra parte, el segundo parámetro de
DOS debe ser de tipo entero mientras que b+3 es de tipo real….real más entero da un
real

 Segunda llamada: TRES(x) No es válida, x no está declarada.
 Tercera llamada: UNO (b/2.0, a). No válida ya que b/2.0 es de tipo real y el primer
parámetro de UNO debe ser de tipo entero. Por otro lado a es de tipo entero y UNO pide
un real como segundo parámetro.

 Cuarta llamada: TRES (4,c). No válida ya que TRES sólo tiene un parámetro.
 Quinta llamada: UNO( a, 2.3). No válida. UNO pide el segundo como inout y 2.3 es una

constante

 Sexta llamada: DOS( c,y). No válida ya que y no está declarada.
 Séptima llamada: Uno (a,b). Válida.


nota: REPASAR ÁMBITO y VER EJECUCIÓN PROPUESTA EN TEORÍA Y PRACTICA



Ejemplo 2
Diseñe un algoritmo, en lenguaje de diseño, que permita ingresar en 10 números enteros
positivos y luego muestre por pantalla aquellos números que sean múltiplos de 8. Realice tres
subalgoritmos (Ingreso, MulDeOcho, Mostrar)

SUBALGORITMO “INGRESO” (out A: arreglo de entero, in LI, LS: entero)

COMENZAR

I: entero

I ← LI

MIENTRAS I <= LS HACER

ESCRIBIR ¨Ingrese un número entero”

LEER A[I]

MIENTRAS LEER A[I] < 0 HACER



ESCRIBIR ¨Ingrese un número entero”

LEER A[I]

FINMIENTRAS

I ← I+1

FINMIENTRAS

FIN



SUBALGORITMO “MulDeOcho” (in nro: entero, out es: lógico)

COMENZAR

SI nro // 8 = 0 ENTONCES

es ← VERDADERO

SINO



es ← FALSO

FINSI

FIN



SUBALGORITMO “MUESTRA” (in A: arreglo de entero, in LI, LS: entero)

COMENZAR

I: entero

SALIDA: lógico

PARA I DESDE li HASTA ls CON PASO 1 HACER

CALCULO( A[I], SALIDA)

SI salida = VERDADERO ENTONCES

ESCRIBIR “número:”, A[I]

FINSI

FINPARA

FIN



ALGORITMO “PRINCIPAL”

COMENZAR

ARR: arreglo[1..10] de entero

INGRESO (ARR, 1, 10)

MUESTRA (ARR, 1, 10)

FIN



Ejemplo 3:
Escriba un algoritmo que permita: Ingresar no más de 100 enteros positivos en un arreglo.
Ordenar los elementos ingresados en forma creciente. Mostrar los elementos del arreglo
ordenado. Buscar un elemento en el arreglo ordenado. Para ello se deberán definir 4
subalgoritmos además del algoritmo principal:

1. El subalgoritmo INGRESO que permite ingresar los valores enteros positivos.
2. El subalgoritmo ORDENO que permite ordenar los valores ingresados.
3. El subalgoritmo MOSTRAR que permita mostrar los elementos del arreglo.
4. El subalgoritmo BUSCAR que permite buscar un elemento x en el arreglo, informando

correctamente el resultados de la búsqueda.


SUBALGORITMO “INGRESO” (out A: arreglo de entero, in LI: entero, out
LS: entero) COMENZAR

I: entero
ESCRIBIR “Ingrese la cantidad de números a cargar”
LEER LS
MIENTRAS LS <= 0 v LS > 100 HACER

ESCRIBIR “ Ingrese un valor válido para la cantidad de

números a cargar”

LEER LS

FINMIENTRAS

PARA I DESDE LI HASTA LS CON PASO 1 HACER
ESCRIBIR ¨Ingrese un número entero”
LEER A[I]
MIENTRAS LEER A[I] < 0 HACER


ESCRIBIR ¨Ingrese un número entero”
LEER A[I]

FINMIENTRAS

FINPARA

FIN


SUBALGORITMO “ORDENO” (inout A: arreglo de entero, in LI, LS: entero)
COMENZAR

I, J, AUX: entero

PARA I DESDE LI HASTA LS-1 CON PASO 1 HACER

PARA J DESDE I+1 HASTA LS CON PASO 1 HACER



SI A[J] < A[I] ENTONCES


AUX  A[I]
A[I]  A[J]
A[J]  AUX



FINSI


FINPARA

FINPARA

FIN

SUBALGORITMO “MOSTRAR” (in A: arreglo de entero, in LI, LS: entero)

COMENZAR

I: entero

PARA I DESDE li HASTA ls CON PASO 1 HACER

ESCRIBIR “-- ”, A[I]

FINPARA

FIN

SUBALGORITMO “BuscarEnOrdenados” (in A: arreglo de entero, in LI, LS,

X: entero, out es: lógico)

COMENZAR

I: entero
es ← FALSO

PARA I DESDE li HASTA lS CON PASO 1 HACER

SI A[I] = X ENTONCES

es  VERDADERO
I  LS +1



SINO



SI A[I] > X ENTONCES

I  LS +1

FINSI

FINSI



FINPARA



FIN



ALGORITMO “PRINCIPAL”

COMENZAR

Como los elementos están

ordenados, si encuentro
uno mayor al que busco,
entonces ya puedo decir
que el elemento buscado

no se encuentra.

ARR: arreglo[1..100] de entero

LI, LS, X: entero

ES: LÓGICO
Li 1

INGRESO (ARR, LI, LS)

ORDENAR (ARR, LI, LS)

MOSTRAR (ARR, LI, LS)

ESCRIBIR “ Ingrese el número a buscar”

LEER X

BuscarEnOrdenados (ARR, LI, LS, X, ES)

SI ES = VERDADERO ENTONCES



ESCRIBIR “El número “, X, “si se encuentra”

SINO

ESCRIBIR “El número “, X, “NO se encuentra”

FINSI



FIN
  • Links de descarga
http://lwp-l.com/pdf12117

Comentarios de: Algoritmos - Ejemplos resueltos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad