Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MILAGRO – ECUADOR
CODIFICACIÓN EN LENGUAJE PYTHON DE EJERCICIOS PROPUESTOS SOBRE
LA UNIDAD 3
OBJETIVO GENERAL:
Encontrar la estrategia adecuada para aplicar listas, pilas o colas en los problemas a
programar.
Describir el funcionamiento de cada programa.
DESARROLLO:
Programa a: El siguiente programa se ingresa una secuencia de caracteres, para
obtener en su salida la secuencia invertida, se utilizó programación orientada a
objetos creando la clase Secuencia_invertida; mediante un método de invertir () se
invirtió la secuencia de entrada.
Código:
print("\t\t\t\t\t UNIVERSIDAD ESTATAL DE MILAGRO (UNEMI)")
print("\t\t\t\t\t\programación Orientada a Objetos")
print("\t\t\t\t\t\t\tListas, pilas y colas")
print("Programa A: Crea un programa que lea una secuencia de caracteres (uno a la vez),
guarde")
print("cada carácter en una posición de una lista y finalmente muestre la secuencia
invertida.\n")
#Se crea la clase Secuencia_invertida, atributos: lista; métodos: invertir
class Secuencia_invertida:
def __init__(self):
self.lista = []
def invertir(self):
while True:
caracter = input('Ingresa un carácter (o un espacio para terminar): ')
if caracter == ' ':
break
self.lista.append(caracter)
return self.lista[::-1]
#Se instancia la clase Secuencia_invertida en el objeto inversion
inversion = Secuencia_invertida()
#Llama desde el objeto creado al método invertir
secuencia_invertida = inversion.invertir()
#Mostrar por pantalla la secuencia invertida
print("Secuencia invertida: ",secuencia_invertida)
Ejecución del Programa a:
Imagen 1
self.str1 = str1
self.str2 = str2
def intercalado_str(self):
intercalado_lista = []
stack1 = list(self.str1)
stack2 = list(self.str2)
queue = []
return intercalado_lista
def mostrar(self):
intercalado_lista = self.intercalado_str()
print("Lista creada: "+''.join(intercalado_lista))
Imagen 2
Imagen 3
def extraer_cons(self):
for letra in self.cadena:
if letra.lower() not in 'aeiou' and letra.isalpha():
self.consonantes.append(letra)
def imprimir_cons(self):
print("Lista de consonantes: ",self.consonantes)
##Ingresa el string
caracteres = input('Introduce un string: ')
#Instancia consonantes de la clase Consonantes
consonantes = Consonantes(caracteres)
#Extrae consonantes del string
consonantes.extraer_cons()
#Imprime por pantalla las consonantes del string
consonantes.imprimir_cons()
Imagen 4
Programa d: El programa permite ingresar solo números enteros a una pila hasta
digitar “0”, se creó la clase Numero_Pila la cual permite mediante sus métodos
mostrar los elementos guardados en la pila e imprimirlos por pantalla.
Código:
print("\t\t\t\t\t UNIVERSIDAD ESTATAL DE MILAGRO (UNEMI)")
print("\t\t\t\t\t\tProgramacion Orientada a Objetos")
print("\t\t\t\t\t\t\tListas, pilas y colas")
print("Programa d: Crear un programa para ingresar números enteros a una pila,")
print("se ingresarán los números hasta que el valor que se ingrese sea cero, en")
print("ese momento debe presentar los elementos que se han ingresado a la pila y el
promedio.\n")
#Creación de la clase Numero_Pila, con métodos: push, pop,is_empty y get_elementos
class Numero_Pila:
def __init__(self):
self.pila = []
def is_empty(self):
return len(self.pila) == 0
def get_elementos(self):
return self.pila
# Leer los números y agregarlos a la pila; manejo de excepciones de solo números enteros
while True:
try:
number = int(input("Ingrese un número entero (0 para terminar): "))
if number == 0:
break
num_pila.push(number)
except ValueError:
print("Ingrese solo números enteros para calcular el promedio.")
# Calcular el promedio
total = sum(elementos)
contador = len(elementos)
promedio = total / contador
print("Promedio:",promedio)
Ejecución del Programa d:
Imagen 5
Imagen 6
def pop(self):
if not self.is_empty():
return self.pila.pop()
else:
return None
def is_empty(self):
return len(self.pila) == 0
def get_elementos(self):
return self.pila
def get_contar_vocales(self):
return self.vocales
def get_contar_consonantes(self):
return self.consonantes
while True:
letra = input("Digite una letra (ingrese un número para terminar): ")
if letra.isdigit():
break
if letra.isalpha():
letra_pila.push(letra)
else:
print("Solo se permiten letras.")
# Mostrar por pantalla los elementos de la pila
elementos = letra_pila.get_elementos()
print("Elementos ingresados a la pila:", elementos)
Imagen 7
Imagen 8
def desencolar(self):
if not self.is_empty():
return self.cola.popleft()
else:
return None
def is_empty(self):
return len(self.cola) == 0
def get_elementos(self):
return self.cola
# Leer los números y agregarlos a la cola, manejo de excepciones solo números enteros
while True:
try:
numero = int(input("Ingrese un número entero (0 para terminar): "))
if numero == 0:
break
num_cola.encolar(numero)
except ValueError:
print("Ingrese solo números enteros para calcular el promedio de la cola.")
# Calcular el promedio
total = sum(elementos)
contador = len(elementos)
promedio = total / contador
#Mostrar por pantalla el promedio de los elementos
print("Promedio de la cola:",promedio)
Ejecución del Programa f:
Imagen 9
Código:
from collections import deque
print("\t\t\t\t\t UNIVERSIDAD ESTATAL DE MILAGRO (UNEMI)")
print("\t\t\t\t\t\tProgramacion Orientada a Objetos")
print("\t\t\t\t\t\t\tListas, pilas y colas")
print("Programa g: Crear un programa para ingresar solo letras en una cola, el ingreso se ")
print("detendrá cuando se ingrese un número. Después de que finalice el ingreso deberá")
print("mostrar los elementos ingresados, además deberá presentar cuantas vocales y
cuantas")
print("consonantes se ingresaron en la cola.\n")
#Creacion de la clase LetraCola, con métodos: encolar, desencolar, is_empty,
get_elementos, get_contar_vocales, get_contar_consonantes
class LetraCola:
def __init__(self):
self.cola = deque()
self.vocales = 0
self.consonantes = 0
def desencolar(self):
if not self.is_empty():
return self.cola.popleft()
else:
return None
def is_empty(self):
return len(self.cola) == 0
def get_elementos(self):
return self.cola
def get_contar_vocales(self):
return self.vocales
def get_contar_consonantes(self):
return self.consonantes
while True:
letra = input("Digite una letra (ingrese un número para terminar): ")
if letra.isdigit():
break
if letra.isalpha():
letra_cola.encolar(letra)
else:
print("Solo se permiten letras.")
Imagen 10