Skip to main content
MENTIONS
ANALYTICS
UPLOAD
TOOLS
Premium
15
Jorge
Download PDF
Full PDF Package
Translate PDF
Más de 400 ejercicios de programación en Python
Paola Ortiz
Top 0.1%269721 Views48 Pages
1 File ▾
Aprender a pensar como un programador con el ejercicio continuo con los
problemas que se presentan en el documento
Download PDF
Full PDF Package
Translate PDF
Original PDF
Summary
Related
2003/11/26-16:57
·
465
Haz un programa que lea un fichero de texto que puede contener vocales
acentuadas y muestre por pantalla unaversi´on del mismo en el que cada vocal
acentuada ha sido sustituida por la misma vocal sin acentuar.
·
466
Dise˜na un programa,
[Link]
, que descifre ficheros cifrados por
[Link]
. El programa pedir´a el nombre delfichero cifrado y el del fichero en el que se
guardar´a el resultado.
·
467
Dise˜na un programa que, dados dos ficheros de texto, nos diga si el primero es
una versi´on cifrada del segundo (conel c´odigo de cifrado descrito en la secci
´on).
·
468
Dise˜na un programa que obtenga los 100 primeros n´umeros primos y los
almacene en un fichero de texto llamado
[Link]
.
·
469
Haz un programa que pida el nombre de un grupo de usuarios Unix. A
continuaci´on, abre en modo escritura unfichero con el mismo nombre del grupo le
´ıdo y extensi´on
grp
. En dicho fichero deber´as escribir el nombre real de todos losusuarios de dicho
grupo, uno en cada l´ınea. (Lee antes el enunciado de los ejercicios 461 y 463.)
·
470
Deseamos automatizar el env´ıo personalizado de correo electr´onico a nuestros clientes.
(¿Recuerdas el apartado
??
?Si no, est´udialo de nuevo.) Disponemos de un fichero de clientes llamado
[Link]
en el que cada l´ınea tiene la direcci´onde correo electr´onico y el nombre de un cliente nuestro.
El fichero empieza as´ı:
1
al00000@[Link]PedroP´erez
2
spammer@[Link]JohnDoe
3
...
En otro fichero, llamado
[Link]
, tenemos un carta personalizable. En ella, el lugar donde queremos poner el
nombre delcliente aparece marcado con el texto
$CLIENTE$
. La carta empieza as´ı:
1
Estimado/aSr/a$CLIENTE$:
23
Tenemosnoticiasdequeud.,don/
do~na$CLIENTE$,nohaabonadoelimporte
4
delacuotamensualaqueleobligaeldraconianocontratoquefirm´o
5
...
Haz un programa que env´ıe un correo a cada cliente con el contenido de
[Link]
debidamente personalizado. Ahoraque sabes definir y usar funciones, dise˜na
el programa sirvi´endote de ellas.
·
471
Nuestro ficheros
[Link]
se modifica ahora para incluir como segundo campo de cada l´ınea el sexo
de lapersona. La letra
H
indica que se trata de un hombre y la letra
M
q u e s e t r a t a d e u n a m u j e r . M o d i fi c a e l p r o g r a m a p a r a que sustituya las
expresiones
don/do~na
por
don
o
do~na
,
Estimado/a
por
Estimado
o
Estimada
y
Sr/a
por
Sr
o
Sra
seg´unconvenga.
·
472
Hemos decidido sustituir las tres llamadas al m´etodo
write
de las l´ıneas 32, 33 y 34 por una sola:
fcopia
.
write
(
linea
1
+
linea
2
+
linea
3
)
¿Funcionar´a igual?
·
473
En su versi´on actual, es posible a˜nadir dos veces una misma entrada a la
agenda. Modifica
anyadir
_
entrada
paraque s´o l o a ˜ nada una nueva entrada si corresponde a una persona
diferente. A˜nadir por segunda vez los datos de una mismapersona supone sustituir
el viejo tel´efono por el nuevo.
·
474
A˜nade a la agenda las siguientes operaciones:Listado completo de la agenda
por pantalla. Cada entrada debe ocupar una s´ola l´ınea en [Link] de tel
´efonos de todas las personas cuyo apellido empieza por una letra determinada.
·
475
Haz que cada vez que se a˜nade una entrada a la agenda, ´esta quede ordenada alfab
´eticamente.
·
476
Deseamos poder trabajar con m´as de un tel´efono por persona. Modifica el programa
de la agenda para que la l´ıneaque contiene el tel´efono contenga una relaci´on de tel
´efonos separados por blancos. He aqu´ı un ejemplo de entrada con trestel´efonos:
1
Pedro
2
L´opez
3
96411253796400992396411092
La funci´on
buscar
_
entrada
devolver´a una lista con tantos elementos como tel´efonos tiene la persona encontrada.
Enriquecela aplicaci´on con la posibilidad de borrar uno de los tel´efonos de una persona.
46
Introducci´on a la Programaci´on con Python
c
2003 Andr´es Marzal e Isabel Gracia
·
477
Modifica la aplicaci´on de gesti´on de estudiantes del cap´ıtulo anterior para que recuerde todos los
datos entre ejecuci´ony ejecuci´on. (Puedes inspirarte en la segunda versi´on de la
agenda.)
·
478
Modifica la aplicaci´on de gesti´on del videoclub del cap´ıtulo anterior para que
recuerde todos los datos entre ejecuci´ony ejecuci´on. Mant´en dos ficheros
distintos: uno para las pel´ıculas y otro para los socios.
·
479
Dise˜na un programa que lea un fichero de texto en formato HTML y genere
otro en el que se sustituyan todos losfragmentos de texto resaltados en negrita
por el mismo texto resaltado en cursiva.
·
480
Las cabeceras (t´ıtulos de cap´ıtulos, secciones, subsecciones, etc.) de una p´agina
web
se marcan encerr´andolas entre
<H
n
>
y
</H
n
>
, donde
n
e s u n n ´ umero entre 1 y 6 (la cabecera principal o de nivel 1 se encierra entre
<H1>
y
</H1>
). Escribeun programa para cada una de estas tareas sobre un fichero
HTML:mostrar ´unicamente el texto de las cabeceras de nivel 1;mostrar el
texto de todas las cabeceras, pero con sangrado, de modo que el texto de las
cabeceras de nivel
n
aparezcados espacios m´as a la derecha que el de las cabeceras de nivel
n
−
[Link] ejemplo de uso del segundo programa te ayudar´a a entender lo que se
pide. Para el siguiente fichero HTML,
1
<HTML>
2
<BODY>
3
<H1>Untitular</H1>
4
<P>Textoenunp´arrafo.
5
<P>Otrop´arrafo.
6
<H1>Otrotitular</H1>
7
<H2>Unsubt´ıtulo</H2>
8
<P>Ysutexto.
9
<H3>Unsubsubt´ıtulo</H3>
10
<H2>Otrosubt´ıtulo</H2>
11
<P>Yelsuyo
12
</BODY>
13
</HTML>
el programa mostrar´a por pantalla:
Un titularOtro titularU n s u b t ´ ıtuloUn subsubt´ıtuloOtro subt´ıtulo
·
481
A˜n a d e u n a o p c i ´ on a la agenda desarrollada en el apartado anterior para que
genere un fichero
[Link]
conun volcado de la agenda que podemos visualizar en un navegador
web
. El listado aparecer´a ordenado alfab´eticamente (porapellido), con una secci´on por cada
letra del alfabeto y una l´ınea por entrada. El apellido de cada persona aparecer´a
destacadoen negrita.
·
482
Modifica el programa
[Link]
para que asuma un formato de
[Link]
similar al
/etc/passwd
. Cada l´ıneacontiene una entrada y cada entrada consta de 3 o m´as campos
separados por dos puntos. El primer campo es el nombre, elsegundo es el
apellido y el tercero y posteriores corresponden a diferentes tel´efonos de esa persona.
·
483
Un programa es, en el fondo, un fichero de texto con formato,
a u n q u e b a s t a n t e c o m p l i c a d o , p o r r e g l a g e n e r a l . Cuando ejecuta un programa e
l int´erprete est´a, valga la redundancia, interpretando su significado paso a paso.
Vamos adise˜nar nosotros mismos un int´erprete para un peque˜no lenguaje de
programaci´o n . E l l e n g u a j e s ´ olo tiene tres variablesllamadas
A
,
B
y
C
. Puedes asignar un valor a una variable con sentencias como las de este
programa:
1
asignaAsuma3y7
2
asignaBrestaAy2
3
asignaCproductoAyB
4
asignaAdivisionAy10
Si interpretas ese programa,
A
acaba valiendo 1,
B
acaba valiendo 8 y
C
acaba valiendo 80. La otra sentencia del lenguajepermite mostrar por pantalla
el valor de una variable. Si a˜nades al anterior programa estas otras sentencias:
1
muestraA
2
muestraB
Introducci´on a la Programaci´on con Python
47
2003/11/26-16:57
obtendr´as en pantalla una l´ınea con el valor 1 y otra con el valor [Link]˜na un programa
que pida el nombre de un fichero de texto que contiene sentencias de nuestro
lenguaje y muestre porpantalla el resultado de su ejecuci´on. Si el programa encuentra
una sentencia incorrectamente escrita (por ejemplo
muestrameA
), se detendr´a mostrando el n´umero de l´ınea en la que encontr´o el error.
·
484
Enriquece el int´erprete del ejercicio anterior para que entienda la orden
si
valor condici´ o n v a l o r
entonceslinea
n´ umero
. En ella,
valor
p u e d e s e r u n n ´ umero o una variable y
condici´ on
puede ser la palabra
igual
o la palabra
distinto
. La sentencia se interpreta como que si es cierta la condici´on, la siguiente l´ınea a ejecutar
es la que tiene el n´umero
n´ umero
.Si tu programa Python interpreta este programa:
1
asignaAsuma0y1
2
asignaBsuma0y1
3
muestraB
4
asignaBproducto2yB
5
asignaAsumaAy1
6
siAdistinto8entonceslinea3
en pantalla aparecer´a
1248163264
48
Introducci´on a la Programaci´on con Python
ABOUT AUTHOR
Paola Ortiz
Universidad de Cuenca, Ecuador
Alumnus
PAPERS
1
FOLLOWERS
14.009
Follow
RELATED PAPERS
Ejercicios-python
PLANETA AL DESNUDO
DownloadMore Options
ejercicios de python
perick van der vhir
DownloadMore Options
Mas_de_400_ejercicios_de_programacion_en.pdf
Neslon delgado rojas
DownloadMore Options
Ippython
manuel valenzuela
DownloadMore Options
Python
Alfredo Pinedo Aparicio
DownloadMore Options
Python s
Salvador Mtz
DownloadMore Options
Introduccion a Python
Nacho Ventura
DownloadMore Options
Python libro
Rommel Rios Alcantara
DownloadMore Options
Introduccion a la programacion Python FREELIBROS COM
Claudio Castlillo
DownloadMore Options
Introducción a la programación con Python
dani barbal
DownloadMore Options
Introduccion a la programacion en Python
Nico Juarez
DownloadMore Options
Curso Phyton
Sergio Camacho
DownloadMore Options
Libro de c PDF
David Asencio
DownloadMore Options
Introducción a la programación con C
Jose Luis
DownloadMore Options
Python -Guia de clases
Pedro Muñoz del Rio
DownloadMore Options
Python para informáticos Explorando la información Charles Severance
Jorge Lara
DownloadMore Options
Python by vilar
Exxo Music
DownloadMore Options
Python: Conceptos básicos y ejercicios
Fran Molina Sánchez
DownloadMore Options
Python by vilar ejercicios
Neido Garcia
DownloadMore Options
Doma de Serpientes para Niños - Aprendiendo a Programar con Python
YiMmy Motta
DownloadMore Options
Aprenda a Pensar Como un Programador con Python
Alexander Lambrecht
DownloadMore Options
Aprenda a programar con Python
William Glaffo
DownloadMore Options
Aprenda a Pensar Como un Programador
Rolo Velasquez
DownloadMore Options
Think Python esp
pepa zuñiga
DownloadMore Options
Aprenda a pensar comoprogramado con python
Eyder Castellar
DownloadMore Options
About
Press
Blog
People
Papers
Topics
Academia Biology
Academia Engineering
Academia Medicine
Job Board
We're Hiring!
Help Center
Terms
Privacy
Copyright
Academia ©2023