3 Identifica La Sintaxis y Semántica en Un Lenguaje de Programación. Diseña e Implementa Programas en Un Lenguaje de Programación
3 Identifica La Sintaxis y Semántica en Un Lenguaje de Programación. Diseña e Implementa Programas en Un Lenguaje de Programación
ACTIVIDADES POR DESARROLLAR (Anotar las actividades que deberá seguir el estudiante para el cumplimiento de la práctica)
1. Realizar las actividades planteadas en este documento, total de secciones a desarrollar: 7.
2. Presentar la solución sobre el mismo formato (subirlo al ambiente virtual) y bien expresado el proceso utilizado.
RESULTADO(S) OBTENIDO(S):
Desarrolla aplicaciones utilizando el lenguaje de programación.
CONCLUSIONES:
Los practicantes tienen la habilidad de realizar ejercicios con algoritmos.
Los practicantes mejoran el conocimiento aprendido en base a la experimentación realizada, desarrollando
algoritmos y representándolos en programas de aplicación.
RECOMENDACIONES:
Asistir a las jornadas de clases.
Revisar detalladamente la información entregada por el docente
Despejar las dudas que puedan surgir al momento de realizar la práctica.
Resolución CS N° 076-04-2016-04-20
Página 1 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Previa
SECCIÓN
Fase 1:
En esta sección revise los siguientes sitios web:
(http://www.mclibre.org/consultar/python/lecciones/python-funciones-1.html | http://www.mclibre.org/consultar/python/lecciones/python-funciones-2.html )
1. Sitio 1
2. Sitio 2
Luego, siga los ejercicios de las imágenes con interacción (tienen esta forma):
Referencia: http://www.mclibre.org/consultar/python/index.html
Fase 2:
A continuación, complete el código faltante, hágalos funcionar entendiendo lo realizan cada uno de ellos y
agregando el código de contexto requerido para se ejecute sin error, (agregue e importe librerías necesarias y
en la plataforma de desarrollo que usted prefiera), recuerde que debe llegar a la ejecución final correcta del
mismo.
Resolución CS N° 076-04-2016-04-20
Página 2 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
while True:
print('''
Selecione una opcion(1, 2, 3, 4, 5, 6):
1. Rellenar matriz
2. Suma Fila
3. Suma columna
4. Suma Diagonal principal
5. Suma Diagonal Inversa
6. Salir
''')
Resolución CS N° 076-04-2016-04-20
Página 3 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Fase 3:
Revise los siguientes videos de los temas del capítulo:
Matrices Arreglos Métodos Punteros
SECCIÓN 1
Resolución CS N° 076-04-2016-04-20
Página 4 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
2. Lea una matriz n x m. Para cada fila, muestre el producto de los elementos cuyo valor es un número par.
Resolución CS N° 076-04-2016-04-20
Página 5 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
3. Lea una matriz cuadrada. Muestre la suma de los elementos que no están en las dos diagonales
principales.
4. Un cuadrado semi-mágico es una matriz cuadrada conteniendo números tales que la suma, de las dos
diagonales principales producen el mismo resultado.
Ejemplo. Un cuadrado semi-mágico de 4 filas y 4 columnas:
8 1 6 7
6 5 7 3
4 3 2 1
2 8 9 4
Escriba un programa que coloque números enteros aleatorios de una cifra en una matriz de 4 filas y 4
columnas. Repita el ciclo hasta que la matriz sea un cuadrado semi-mágico.
El programa debe mostrar la matriz resultante y la cantidad de intentos que realizó el programa hasta
llenar la matriz con éxito.
Resolución CS N° 076-04-2016-04-20
Página 6 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
5. Escriba un programa que coloque números aleatorios de una cifra en los cuatro bordes de una matriz.
Después rellene los elementos del interior de la matriz con números aleatorios de una cifra, tales que
cada uno sea menor o igual al promedio de todos los elementos en los bordes
Ejemplo. Matriz inicial de 4 x 4 Matriz rellena:
8 1 6 7 8 1 6 7
6 3 promedio: 4.91 6 3 4 3
4 1 4 2 3 1
2 8 9 4 2 8 9 4
Al inicio no interesan los valores que se asignan a los elementos interiores pues serán sustituidos.
El programa debe mostrar la matriz resultante y la cantidad de intentos que realizó el programa hasta
llenar la matriz con éxito.
Resolución CS N° 076-04-2016-04-20
Página 7 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
6. Escriba una función b=diagonales(a) que reciba una matriz nxn e intercambie los elementos de la
diagonal principal con los elementos de la otra diagonal.
Ejemplo: Matriz inicial de 4 x 4 Matriz modificada
3 2 7 9 9 2 7 3
6 5 3 7 6 3 5 7
8 8 1 6 8 1 8 6
3 5 9 2 2 5 9 3
En la ventana interactiva genere una matriz cuadrada con números aleatorios de una cifra. Llame a la
función y verifique si el resultado es correcto.
7. Escriba una función que reciba una matriz. La función debe entregar un vector con la cantidad de
elementos pares que contiene cada columna de la matriz
[ ]
3 4 5
6 1 8
Ejemplo. Entra sale [2, 3, 1]
8 6 3
7 8 7
Resolución CS N° 076-04-2016-04-20
Página 8 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
8. Escriba un programa que lea una matriz, llame a la función creada y determine cuál es la columna con la
mayor cantidad de números pares.
9. Escriba una función suma(n) que entregue la suma de las cifras de un número dado n. Con esta función
escriba un programa que genere 10 números aleatorios entre 1 y 100 y encuentre cuál de ellos tiene la
mayor suma de sus cifras.
Resolución CS N° 076-04-2016-04-20
Página 9 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
10. Escriba una función cuadrado(n) que determine si el cuadrado de un número natural n dado, es igual a la
suma de los primeros n números impares. Ej. 6 2 = 1+3+5+7+9+11 Escriba un programa de prueba que
ingrese un dato desde el teclado, use la función y muestre el resultado en la pantalla.
11. Escriba una función secuencia1(n) que entregue el n-ésimo término de la siguiente secuencia, en la cual
cada término, a partir del tercero se obtiene sumando los dos anteriores: 1, 1, 2, 3, 5, 8, 13, 21, ....
Escriba un programa de prueba que ingrese un dato desde el teclado use la función y muestre el
resultado en la pantalla.
Resolución CS N° 076-04-2016-04-20
Página 10 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
12. Escriba una función secuencia2(n) que entregue el n-ésimo término de la siguiente secuencia, en la cual
cada término, a partir del cuarto se obtiene sumando los tres anteriores: 1, 1, 1, 3, 5, 9, 17, 31, 57,
Escriba un programa de prueba que ingrese un dato desde el teclado, use la función y muestre el
resultado en la pantalla.
13. Escriba una función simetrico(x) que reciba un entero y determine si es simétrico, es decir si los dígitos
opuestos alrededor del centro son iguales. Escriba un programa de prueba que genere números
aleatorios entre 1 y 10000 hasta obtener un número que sea simétrico
Resolución CS N° 076-04-2016-04-20
Página 11 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
14. Escriba una función final(n) que entregue como resultado la cantidad de veces que debe lanzarse un
dado hasta que salga un número n dado como parámetro. Escriba un programa de prueba que ingrese un
dato desde el teclado, use la función y muestre el resultado en la pantalla.
15. Escriba una función conteo(x) que determine la cantidad de términos que deben sumarse de la serie:
1*2*3 + 2*3*4 + 3*4*5 + 4*5*6+ hasta que la suma exceda a un valor x dado. Escriba un programa de
prueba que genere un número aleatorio para x entre 1 y 1000, use la función y muestre el resultado en la
pantalla.
Resolución CS N° 076-04-2016-04-20
Página 12 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
16. Haz un programa que almacene en una variable a la lista obtenida con range(1,4) y, a continuación, la
modifique para que cada componente sea igual al cuadrado del componente original. El programa
mostrará la lista resultante por pantalla.
17. Haz un programa que almacene en a una lista obtenida con range(1,n), donde n es un entero que se pide
al usuario y modifique dicha lista para que cada componente sea igual al cuadrado del componente
original. El programa mostrará la lista resultante por pantalla.
Resolución CS N° 076-04-2016-04-20
Página 13 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
18. Haz un programa que, dada una lista a cualquiera, sustituya cualquier elemento negativo por cero.
19. Diseña un programa que construya una lista con los n primeros números primos (ojo: no los primos entre
1 y n, sino los n primeros números primos). ¿Necesitas usar append? ¿Puedes reservar en primer lugar
un vector con n celdas nulas y asignarle a cada una de ellas uno de los números primos?
Resolución CS N° 076-04-2016-04-20
Página 14 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
20. Diseña un programa que elimine de una lista todos los elementos de índice par y muestre por pantalla el
resultado. (Ejemplo: si trabaja con la lista [1, 2, 1, 5, 0, 3], ésta pasará a ser [2, 5, 3].)
(Para los ejercicios 16, 17, 18, 19 y 20 utilice la sección 5.2.3 el operador is del pdf de:
https://www.u-cursos.cl/ingenieria/2011/2/CC3501/1/material_docente/bajar?id_material=381752)
SECCIÓN 2
Elabora los siguientes problemas mediante el uso adecuado de sintaxis.
Resolución CS N° 076-04-2016-04-20
Página 15 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 16 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
3. Hacer un programa que le pida una cadena al usuario (usando la función "input") y la
imprima a pantalla al revés. Por ejemplo, para el texto "Esto es así", debería mostrar:
"ísa se otsE"
Resolución CS N° 076-04-2016-04-20
Página 17 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
dividido por dos de forma entera, y elevado a la potencia de dos. Por ejemplo, para el
número 7, debería mostrar:
5
9
14
3
3.5
49
Resolución CS N° 076-04-2016-04-20
Página 18 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
6. Pedirle tres números (que pueden ser con decimales) al usuario, base y altura de un
rectángulo, y radio de un círculo. Calcular perímetro y área de cada figura.
Resolución CS N° 076-04-2016-04-20
Página 19 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
8. Sumar 0.3 diez veces. Por otro lado, multiplicar 0.3 por diez. ¿El resultado es el mismo?
¿Por qué? ¿Qué tipo de dato debe usar?
9. Pedirle una frase al usuario e imprima, en orden, qué consonantes se utilizaron. Por
ejemplo, si se ingresó "la rana rené", mostrar "lnr".
Resolución CS N° 076-04-2016-04-20
Página 20 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 21 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
11. Pedir una frase al usuario y mostrar en mayúscula la inicial de cada palabra. Ejemplo, si
el usuario ingresa "No somos nada", mostrar NSN.
12. Hacer un programa que le pida una cadena al usuario, y arme una triángulo creciente y
decreciente con ese texto. Por ejemplo, para el texto "klop", el resultado sería:
k
kl
klo
klop
klo
kl
k
Resolución CS N° 076-04-2016-04-20
Página 22 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 23 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
15. Hacer una función que recibe un número y contesta "par" o "impar" en función de si el
número es par o no.
16. Hacer una función que recibe dos números y devuelve "mayor" (si el primer número es
mayor que el segundo), "menor", o "iguales".
Resolución CS N° 076-04-2016-04-20
Página 24 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
17. Hacer un programa que genere un número entero al azar (módulo random) entre 0 y
1000, y le vaya pidiendo al usuario que ingrese números enteros para adivinarlo. Si el
usuario ingresa un número menor que el objetivo, muestra ¡“Es más alto!"; si el usuario
ingresa uno mayor, muestra “Es más bajo!”; si el usuario acierta, muestra “Viva
Python!”, y termina. Si el usuario no acertó en 7 intentos, muestre ¡“Alpiste perdiste!
Booo” y termine.
Resolución CS N° 076-04-2016-04-20
Página 25 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
18. Hacer una función que reciba un texto y devuelva el mismo texto, pero con cada palabra
invertida. Por ejemplo, llamándola con “Esto es una prueba”, debe devolver "otsE se
anu abeurp".
19. Hacer una función que reciba dos palabras y que imprima línea por línea las primeras,
segundas, etc. letras de ambas palabras. Por ejemplo, llamándola con "Hola" y
"mundo", el resultado sería:
H m
o u
l n
a d
o
Resolución CS N° 076-04-2016-04-20
Página 26 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
20. Armar una función que reciba una tupla y devuelva si la tupla está ordenada (de menor
a mayor) o no.
Código de utilidad:
#Escriba un algoritmo que permita hallar la suma de los N primeros números enteros
N = input("Ingresar el número: ")
suma = N
i = 0
print ("Suma")
for i in range(N):
suma = suma + i;
print ("La suma es:", suma)
Resolución CS N° 076-04-2016-04-20
Página 27 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
22. Realice la sumatoria de los números del 1 al 10, visualizando los números de dos
formas, ascendente y descendentemente (de forma horizontal), al final de la línea de
números muestre a suma total.
Resolución CS N° 076-04-2016-04-20
Página 28 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
SECCIÓN 3
Elabora los siguientes problemas mediante el uso de sentencias condicionales y de repetición.
Página 29 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
3) Desarrolle un programa que dado un número determine la sumatoria del 1 hasta ese número
Resolución CS N° 076-04-2016-04-20
Página 30 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 31 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 32 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
SECCIÓN 4
Elabora los siguientes problemas mediante el uso adecuado de sintaxis.
Resolución CS N° 076-04-2016-04-20
Página 33 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
2. Elabore un programa que muestre los números del 100 al 200 en bloques de cinco en cinco, utilice
las estructuras repetitivas for, while y do-while para demostrar que las tres realizan el mismo
resultado.
Resolución CS N° 076-04-2016-04-20
Página 34 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
5. Elabore un programa que muestre los números pares comprendidos entre 10 y 20 inclusive.
Resolución CS N° 076-04-2016-04-20
Página 35 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 36 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 37 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
10.
Resolución CS N° 076-04-2016-04-20
Página 38 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
SECCIÓN 5
Elabora los siguientes problemas mediante el uso adecuado de sintaxis.
10. Elabore un programa que resuelve el juego de adivine un número, si es mayor se pedirá un número más
bajo, caso contrario más alto.
Resolución CS N° 076-04-2016-04-20
Página 39 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 40 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 41 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 42 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 43 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
SECCIÓN 6
Elabora los siguientes problemas mediante el uso de un algoritmo, utiliza cada software que se
indica en el anexo de este documento.
Resolución CS N° 076-04-2016-04-20
Página 44 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
1. Ingrese una cantidad que represente dólares, muestre a continuación el valor correspondiente en
euros. (1 dólar estadounidense = 0,897070169 euros)
2. Ingrese tres valores de calificación sobre diez (notas de una materia), luego calcule su promedio.
3. Ingrese dos valores enteros, correspondientes a edades de personas, luego muestre en pantalla cuál
de las dos es mayor.
Resolución CS N° 076-04-2016-04-20
Página 45 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 46 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
6. Muestra los números del 74 al 96 utilizando el lazo repetitivo “hacer mientras ó hasta que” o “do while
ó repeat until”.
7. Muestra los números del 11 al 99 en bloques de diez en diez utilizando el lazo repetitivo “para” o
“for”.
Resolución CS N° 076-04-2016-04-20
Página 47 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
8. Ingrese una cantidad de x números del uno (1) al noventa y nueve (99), su programa finaliza cuando
el usuario ingresa -888 . A continuación, se mostrará en pantalla cuántos números son: impares,
pares y primos.
Resolución CS N° 076-04-2016-04-20
Página 48 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
10. Realiza la simulación del lanzamiento de dos dados. Recuerda que son aleatorios el valor a obtener y
sólo puede generarse los números del 1 al 6.
Resolución CS N° 076-04-2016-04-20
Página 49 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 50 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Sección 7
Realice la secuencia de creación de archivos.
###############################
character_name = "Joe"
character_age = "35"
age = 45
isMale = True Archivo: funciones.py
def menu():
is_male = False while True:
print(" Hola soy "+character_name+" Llerena") opcion = input("Ingrese una opcion: ")
print(" y tengo "+character_age) if opcion==1:
print("Su alumno es "+str(is_male)) print ("metodo 1")
print("Su hermano tiene "+str(age)+" anios") metodo1()
elif opcion==2:
############################### print ("metodo 2")
n = raw_input("Ingrese numero: ")
# Usando strings
r = factorial(n)
print (" Universidad \n Politecnica \n Salesiana") print ("resultado es "+str(r))
frase = "Esto es un string o cadena de caracteres " elif opcion==3:
print (frase) print ("metodo 1")
print (frase.index("d")) elif opcion==4:
print (frase.replace("es","mira a")) print ("metodo 1")
elif opcion==5:
############################### print ("metodo 1")
# visualizar numeros elif opcion==6:
print ("metodo 1")
my_num = -4
elif opcion==7:
print(str(my_num)) print ("Salir")
print (abs(my_num)) break
print (str(abs(my_num)) + " es mi numero
preferido") def metodo1():
print(pow(3, 2)) nombre = raw_input("Ingrese su nombre: ")
veces = input("Ingrese veces a repetir: ")
my_num = 4 for i in range (veces):
print (round(3.4)) print (str(i+1) + " "+ nombre)
print (floor(my_num)) def factorial(a):
print (sqrt(my_num)) fac = 1
# get input de users for i in range(1, int(a)+1):
name = input("Ingrese su nombre ") fac = fac * (i)
age = input("Ingrese su edad ") return fac
print ("Su nombre es " + name +" y su edad es "+
age)
EJERCICIOS
PRINCIPAL
FUNCIONES
Resolución CS N° 076-04-2016-04-20
Página 52 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
ANEXO
Resolución CS N° 076-04-2016-04-20
Página 53 de 54
VICERRECTORADO DOCENTE Código: GUIA-PRL-001
Resolución CS N° 076-04-2016-04-20
Página 54 de 54