Ejercicios resueltos de programación

Páginas: 5 (1117 palabras) Publicado: 22 de marzo de 2013
Ejercicios resueltos de programación, en Python y en español, I.
Hola. Este es el primero de la serie de artículos que presentaré estos días sobre una colección de ejercicios muy básicos de programación, para resolver con Python (o cualquier otro lenguaje). Decir que son muy sencillos y sirven para afianzar conocimientos básicos de sintaxis y razonamiento. Si eres novel en programación ó enPython, este post es para tí. De lo contrario, te resultarán triviales los planteamientos expuestos.

Los enunciados los he obtenido del libro Esquemas Algorítmicos Fundamentales - Secuencias e Iteración, de P.C. Scholl y J.P. Peyrin, editorial Masson.

Ejercicio 1.
Escribir un algoritmo que, para cualquier número de segundos inferior a un millón, calcule su equivalente en días, horas, minutosy segundos.

En este ejercicio tenemos que tener en cuenta que:

1 minuto = 60 segundos.
1 hora = 60 minutos = 3600 segundos.
1 dia = 24 horas = 1440 minutos = 86400 segundos.

# Pedimos datos.
dato = raw_input(u'Número de segundos: ')

# Hacemos un cast, convirtiendo la cadena en un número largo.
dato = long(dato)

# Comprobamos si el número introducido es menor a un millón.
ifdato >= 1000000:
print "El número debe de ser menor a 1000000"
else:
# Días.
ndias, aux = divmod(dato, 86400)
# Horas.
nhoras, aux = divmod(aux, 3600)
# Minutos y segundos.
nmin, nseg = divmod(aux, 60)
# Mostramos resultado.
print '%d días, %d horas, %d minutos, %d segundos' % \
(ndias, nhoras, nmin, nseg)
Ejercicio 2.
Escribir un algoritmo que imprima el mínimo, el máximo y la media detres números.

# Obtenemos números.
numeros = []
for i in ['primer', 'segundo','tercer']:
texto = u'Introduce el %s número: ' % (i)
numeros.append(float(raw_input(texto)))

# Ordenamos.
numeros.sort()

# Obtenemos máximo y mínimo.
minimo = numeros[0]
maximo = numeros[2]

# Obtenemos la media aritmética.
media = round((numeros[0] + numeros[1] + numeros[2]) / float(3),3)

#Visualizamos resultados.
cadena = u'Mínimo: %d, Máximo: %d, Media: %f' % (minimo, maximo, media)
print cadena

Ejercicio 3.
Escribir un algoritmo que, dado el infinitivo de un verbo regular de la primera conjugación, obtenga la conjugación en singular y plural de presente de indicativo. Por ejemplo, para el verbo cantar el resultado es yo canto, tu cantas, el canta, nosotros cantamos, vosotroscantáis, ellos cantan.


pronombre = ['yo','tu','el','nosotros','vosotros','ellos']

terminaciones = {'yo':'o',
'tu':'as',
'el':'a',
'nosotros':'amos',
'vosotros':u'áis',
'ellos':'an'}

# Pedimos datos.
palabra = raw_input(u'Verbo regular 1ra. conjugación: ')

# Recorremos la tabla hashing (diccionario), construyendo la conjugación verbal.
for i in pronombre:
print i,palabra[0:len(palabra)-2] + terminaciones[i]

Ejercicio 4.
Escribir un algoritmo que, para un número binario de 4 cifras, imprima su valor en base 10. Se estudiarán dos formas del problema según la representación de los datos:
-forma 1: los datos son cuatro enteros (0 ó 1). Por ejemplo: 1,1,0,1.
-forma 2: el dato es un entero cuya representación decimal con cuatro
cifras no contenga más que 0 ó 1: Porejemplo: 1101.


# Obtenemos datos.
nbinario = raw_input(u'Número binario (4 cifras): ')

# Obtenemos los dígitos.
nbinario = nbinario.split(',')
if len(nbinario) == 1: nbinario = list(nbinario[0])

# Inicializamos algunos contadores.
decimal = 0
potencia = 0

# Le damos la vuelta al número binario.
nbinario.reverse()

# Calculamos el número decimal, a partir del número binario.
for iin nbinario:
decimal += pow(2,potencia) if i == '1' else 0
potencia += 1

# Visualizamos resultado.
cadena = u'Su representación decimal es %d' % (decimal)
print cadena

Ejercicio 5.
Escribir un algoritmo que decodifique fechas del siglo XXI. El dato es un entero comprendido entre 10100 y 311299. El resultado es una secuencia de caracteres: número del día dentro del mes, del mes dentro...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • ejercicios resueltos de programacion
  • ejercicios resueltos programacion lineal
  • Ejercicios De Programación Resueltos
  • Ejercicio Resuelto Programacion Lineal
  • ejercicios resueltos de programacion lineal
  • Programacion Lineal Ejercicio 5 Resuelto
  • 5 Ejercicios Resueltos De Programacion Lineal
  • Ejercicios resueltos de programacion matematica

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS