You are on page 1of 2

Ejercicios de introducción a algoritmica

por Alicia Beatriz Paur
Este documento adapta ejercitación de la Guía de Trabajos Prácticos de la asignatura Algorítmica y Programación I,
carrera: Licenciatura en Sistemas y Analista Programador Universitario-Facultad de Ingeniería (UNPSJB, sede Trelew)
con la finalidad de generar objetos de aprendizaje (OA) de menor granularidad y mayor modularidad tendientes a
aumentar su reusabilidad en diferentes contextos.
La guía de trabajos prácticos de Algorítmica y Programación I ha sido desarrollada por los docentes de esa cátedra entre
los que se incluye la autora de esta adaptación.
El objetivo de este OA es repasar conceptos introductorios tales como notación binaria, comprensión de expresiones
lógicas; también se ejercitan soluciones algorítmicas de ejercicios simples.

Repaso notación binaria
1- Representa en notación binaria los siguientes valores decimales:
a) 2
b) 425
c) 987
2- Compara la representación binaria del valor 987 con la representación binaria de la secuencia de caracteres 987.
¿Es lo mismo? ¿Por qué?
3- ¿Cuántas representaciones diferentes pueden lograrse en un byte? ¿Qué rango de valores numéricos se
representan en un byte? ¿Qué número representa la secuencia binaria 1111 1111? (considerado como número no
signado)

Usando expresiones lógicas
1- Un hombre perdido en el desierto se encuentra con cuatro botellas enterradas en la arena y un cadáver al lado de
ellas. Cada botella tiene una etiqueta:
a) Acá hay agua o soda
b) Acá hay agua o soda
c) Acá hay veneno o jugo d) Acá hay veneno o agua.
Las cuatro botellas tienen líquidos con distinto aspecto, con lo cual nuestro hombre intuye, acertadamente, que
contienen cuatro líquidos distintos. ¿Cuál botella contiene veneno?
2- Para poder cursar esta materia se requiere ser alumno regular de la carrera APU y haber obtenido concepto en
Introducción a la Computación. Un alumno que en el ciclo lectivo anterior ha aprobado dos finales es regular. Los
alumnos ingresantes son alumnos regulares.
Para los siguientes casos, indica si el alumno que cumple esas condiciones puede cursar esta materia.
a)
b)
c)
d)

Es regular u obtuvo concepto.
Es ingresante y obtuvo concepto.
Obtuvo concepto y aprobó dos finales.
Es ingresante o aprobó dos finales u
obtuvo concepto.

e)
f)
g)
h)

Es ingresante y (aprobó dos finales u obtuvo concepto).
Es ingresante o (aprobó dos finales y obtuvo concepto).
Es ingresante y aprobó dos finales y obtuvo concepto.
(Es ingresante y aprobó dos finales) u obtuvo concepto.

3- Indica el resultado de las siguientes operaciones lógicas, siendo A = 3, B = 2, M = verdadero y N = falso.
( ( A + B* – B) >= (A – B) ) o no ( M y no N )
no ( (A = B) y (A = 3 ) ) y ( (A ~< B) o (A ~< 0))
4- Escribe expresiones lógico-matemáticas para expresar los siguientes conceptos. Recuerda la diferencia entre:
5 / 2 = 2.5, 5 mod 2 = 1 y 5 div 2 = 2
N mod 2 = 0
N es un número par
N es un número impar
N es divisible por p
N es múltiplo de 7 y múltiplo de 4
no (N mod 5 = 0) y no (N mod 8 = 0)
N no es múltiplo de 5 ni múltiplo de 8
N es divisor de p
N tiene al menos dos dígitos
N es capicúa de dos dígitos
(N > 9 ) y (N ~< 100 ) y (N mod 10) = (N div 10)
N es un capicúa de tres dígitos

Primeros algoritmos
1- ¿Cuáles de los siguientes algoritmos permiten generar el listado ordenado alfabéticamente de los alumnos inscriptos
en AyP?. En los casos que no lo permiten, justifica el por qué.
a) Obtener la lista de nombres de los alumnos inscriptos en AyP.

3. c) Por cada alumno de la facultad: si está inscripto en AyP. Imprimir la lista.Juego de cartas: Indica si el siguiente algoritmo refleja el juego.Imprimir la lista. la cual servirá de referencia. tomar una carta del mazo (carta1) mientras queden cartas en el mazo tomar otra carta (carta2) si carta2 < carta1 entonces dar carta2 a jugador 1 sumar 1 a cantidad de cartas de jugador 1 sino dar carta2 a jugador 2 sumar 1 a cantidad de cartas de jugador 2 fin si fin mientras si cantidad de cartas del jugador 1 > cantidad de cartas del jugador 2 entonces ganó el jugador 1 sino ganó el jugador 2 fin si Fin algoritmo 4. Ordenar alfabéticamente la lista. 2. b. b) Obtener la lista de nombres de los alumnos inscriptos en cada materia de la facultad (materia-nombre de alumno). instrucciones de entrada o salida. y: entero Var Inicio x ← 2 si x < 2 entonces mostrar (“Primero”) sino mostrar (“Segundo”) finSi Inicio ingresar (a. b. c: entero . y) Fin a. Distribuir las restantes cartas entre dos jugadores: el jugador 1 a quien le tocará las cartas de menor valor que el de la carta de referencia y el jugador 2 que tendrá las restantes. Corrige si lo consideras necesario. variables y valores constantes.Realiza la traza de los siguientes algoritmos e indica los resultados visualizados. c) Fin mostrar (“Cuarto”) x ← 5 + 3 * 6 mod 4 y ← x div 2 mostrar (x. Gana el jugador que obtenga más cartas. d) Obtener la lista de nombres de los alumnos inscriptos en AyP. insertar en orden alfabético su nombre en una lista. estructuras de decisión y de repetición que aparecen en estos algoritmos: Algoritmo result1 Algoritmo result2 Var x. Listar los nombres de aquellos que estén inscritos en AyP. Algoritmo Juego de cartas Descripción del juego El juego consiste en: tomar una carta del mazo. Marca las asignaciones. Ordenar alfabéticamente por nombre la lista.Modifica el algoritmo anterior para que las cartas con igual valor al de referencia: a) le correspondan al jugador 1. b) si a < b entonces c ← a a ← b b ← c finSi si x < 4 entonces mostrar (“Tercero”) finSi repetir a ← a – b c ← a–b hasta a < 0 mostrar (a. Imprimir la lista. b) a ninguno de los dos.