0% encontró este documento útil (0 votos)
2 vistas2 páginas

Ejercicios de Programación en Python

Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
2 vistas2 páginas

Ejercicios de Programación en Python

Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

CONSEJERIA DE EDUCACIÓN

IES Gonzalo Nazareno

Introducción a Python. Ejercicios (II)

1. Realiza un programa que pida un cadena. A continuación debe pedir otra cadena. El
programa debe buscar la segunda cadena en la primera (ignorando mayúsculas o minús-
culas) y podrá responder una de las siguientes opciones:

◦ La segunda cadena es una subcadena de la primera


◦ La segunda cadena no es una subcadena de la primera
cadena1 = raw_input (" Dame la primera cadena : "). lower ()
cadena2 = raw_input (" Dame la segunda cadena : "). lower ()
if cadena1 .find( cadena2 ) == -1:
print 'La segunda cadena no es una subcadena de la primera '
else:
print 'La segunda cadena es una subcadena de la primera '

2. El módulo random incluye la función random() que genera un número seudo-aleatorio


entre 0 y 1:
>>> from random import random
>>> random ()
0.51605767814317494

Crea un programa que pida al usuario un número n y genere una lista con n elementos
con valores aleatorios y muestre como salida:

◦ La lista de los n números aletaorios con una precisión de 3 decimales.


◦ La suma de todos los elementos con una precisión de 2 decimales.

Nota: Los valores deben redondearse a la precisión solicitada, no truncarse. La solución


que se presenta no es la más adecuada, aunque una solución más elegante requiere
una explicación más detallada de la salida formateada:
total_num = int( raw_input (" Dame un numero : "))
lista = []
from random import random
for i in range ( total_num ):
lista . append ( random ())
print 'La lista de %d numeros aleatorios es: (' % total_num ,
for i in range ( total_num ):
print ' %.2f' % round ( lista [i],2),
if i != ( total_num - 1): print ",",
print ')'
print 'La suma de estos %d elementos es: %.3f' % (total_num , \
round (sum( lista ) ,3))

3. Escribe un programa que pida al usuario su fecha de nacimiento y le responda el día de


la semana correspondiente:
fecha = raw_input (" Introduce la fecha de nacimiento (DD -MM -YYYY ): \
"). split ('-')
fecha = map(int , fecha )
diasemana = ['lunes ', 'martes ', 'miercoles ', 'jueves ', 'viernes ', \
2
'sabado ', 'domingo ']
from calendar import weekday
print " Naciste en", diasemana [ weekday (fecha [2], fecha [1], fecha [0])]

para ello debes utilizar la función adecuada del módulo calendar.

4. Una dirección 6to4 es una dirección IPv6 reservada para equipos que tienen actual-
mente una dirección IPv4 pública. Un ejemplo de dirección 6to4 sería:
2002:503 b :198:0:219:66 ff:fea8:db3

El campo 2002: es fijo y el bloque importante para esta discusión es el que determina la
parte de red de la dirección, es decir, los campos 503b:198 que son la representación
hexadecimal de la dirección IPv4 correspondiente:
[Link] = 0x50 .0 x3b .0 x1 .0 x98 = 503b:198

el resto de campos se corresponden con la dirección de subred y la dirección de host, y


no son relevantes para este ejercicio.
Escribe un programa que pida una dirección IPv4 pública y nos dé la parte de red
correspondiente de la dirección 6to4 asociada:
dir_ipv4 = map (int , raw_input (" Dame una direccion IPv4 publica : \
"). split ( '. '))
print 'La parte de red 6to4 correspondiente es: 2002: %x %x: %x %x' % \
( dir_ipv4 [0] , dir_ipv4 [1] , dir_ipv4 [2], dir_ipv4 [3])

También podría gustarte