Python - Proyecto Integrador
Python - Proyecto Integrador
Abstract.
Mediante el lenguaje de programación Python se realizó veinte
aplicativos simples dentro de un mismo código, mediante la ayuda
de un menú selector que ayudará al usuario a elegir la opción que
requiera. El mismo programa se encuentra debidamente comentado
y desarrollado mediante los convenios de programación, definiendo
los nombres de las clases con "snake_case"
1 Introducción
Python es un lenguaje de programación interpretado tipificado dinámicamente
cuya filosofía enfatiza una sintaxis que facilita el código legible. Es un lenguaje
de programación multiparadigma disponible en varias plataformas. En otras pal-
abras, Python se ejecuta sin el procesamiento del compilador y los errores se
detectan en tiempo de ejecución. Admite programación funcional, programación
imperativa y programación orientada a objetos. Las variables se comprueban en
tiempo de ejecución. Está disponible para plataformas Windows, Linux o MAC
y no tiene licencia de programación. Python se usa porque lo usan grandes em-
presas, es fácil de aprender y mantener, es gratuito y de código abierto, incluye
una gran cantidad de bibliotecas y tiene una gran comunidad. Al utilizar una
sintaxis legible, la curva de aprendizaje es muy rápida.
2 Método
Las opciones para escoger dentro del menú son por lo general problemas matemáti-
cos para estudiantes de Educación General Básica superior, Bachillerato General
Unificado y en algunos casos Primeros Niveles de Educación Superior. Por lo que
este aplicativo puede ir destinado, por lo general - más allá de la instructora en-
cargada de calificar el software - a los estudiantes y jóvenes entre 15 y 24 años
de edad. Al ser problemas matemáticos y resolución de fórmulas, se entiende que
las respuestas, están debidamente validadas y mantienen lógica y coherencia con
lo pedido.
El siguiente trabajo, comentado y documentado se encuentra en el conocido
sistema de versionamiento GitHub: https://github.com/ejmerino/ModelosDiscretos/
blob/main/%5BNRC_8001%5D_Lab1Unidad2_MerinoCalderon_EdnanJosue.py
Universidad de las Fuerzas Armadas ESPE
3 Resultados y Análisis
2
Universidad de las Fuerzas Armadas ESPE
Fig. 2. Caption
1 d e f menu ( ) :
2 opcion = ""
3 w h i l e o p c i o n != " 21 " :
4 menu = """
5 LABORATORIO 1 PARCIAL 2 POR JOSUÉ MERINO
6 −−−−−−−−−−−−−−−−−−−−−−−−
7 1 . I n g r e s e su nombre
8 2 . C a l c u l a r e l Per í metro y Area d e l P a r a l e l o g r a m o
9 3 . C a l c u l a r v o l úmen de un c i l i n d r o
10 4 . C a l c u l a r e l á r e a de un c í r c u l o
11 5 . Cá l c u l o de p o t e n c i a s x^y
12 6 . C a l c u l a r Volúmen de una e s f e r a
3
Universidad de las Fuerzas Armadas ESPE
13 7 . C a l c u l a r e l á r e a de un r e c t á n g u l o
14 8 . Teorema de P i t á g o r a s
15 9 . C a l c u l a r l a e x p r e s i ón y=(x^z ) /2
16 10. Calcular la rapidez
17 1 1 . C a l c u l o d e n s i d a d de un o b j e t o
18 1 2 . C o n v e r t i r d í a s a añ o s / meses / semanas
19 1 3 . Transformar cm a m y km
20 1 4 . Transformar de F a C o de C a F
21 1 5 . C o n v e r t i r l i b r a s a k i l o s y gramos
22 1 6 . H a l l a r l a r a i z cuadrada de un número
23 1 7 . H a l l a r e l á n g u l o f a l t a n t e de un t r i á n g u l o
24 1 8 . H a l l a r á r e a de un t r i á n g u l o
25 1 9 . O p e r a c i o n e s bá s i c a s con dos números
26 20. Hallar datos del c í rculo
27 21. Salir
28 −−−−−−−−−−−−−−−−−−−−−−−−
29 E l i j a su o p c i ón : """
30 o p c i o n = i n p u t ( menu )
31 i f o p c i o n==" 1 " :
32 saludo ()
33 b re ak
34 i f o p c i o n == " 2 " :
35 paralelogramo ()
36 b re ak
37 i f o p c i o n == " 3 " :
38 cilindro ()
39 b re ak
40 i f o p c i o n == " 4 " :
41 area_circulo ()
42 b re ak
43 i f o p c i o n == " 5 " :
44 potencia ()
45 b re ak
46 i f o p c i o n==" 6 " :
47 volumen _esfera ( )
48 b re ak
49 i f o p c i o n==" 7 " :
50 area_perimetro_rectangulo ()
51 b re ak
52 i f o p c i o n==" 8 " :
53 pitagoras_menu ( )
54 b re ak
55 i f o p c i o n==" 9 " :
56 calculo_expresion ()
57 b re ak
58 i f o p c i o n==" 10 " :
59 velocidad_fisica ()
60 b re ak
61 i f o p c i o n==" 11 " :
62 calculo_densidad ()
4
Universidad de las Fuerzas Armadas ESPE
63 b re ak
64 i f o p c i o n==" 12 " :
65 conversion_dias ()
66 b re ak
67 i f o p c i o n==" 13 " :
68 conversion_longitud ()
69 b re ak
70 i f o p c i o n==" 14 " :
71 menu_temperatura ( )
72 b re ak
73 i f o p c i o n==" 15 " :
74 convertir_libras ()
75 b re ak
76 i f o p c i o n==" 16 " :
77 raiz_cuadrada ( )
78 b re ak
79 i f o p c i o n==" 17 " :
80 encontrar_angulo ( )
81 b re ak
82 i f o p c i o n==" 18 " :
83 area_triangulo ()
84 b re ak
85 i f o p c i o n==" 19 " :
86 aritmetica ()
87 b re ak
88 i f o p c i o n==" 20 " :
89 circulo ()
90 b re ak
Programacion
5
Universidad de las Fuerzas Armadas ESPE
6
Universidad de las Fuerzas Armadas ESPE
1 def saludo () :
2 """
3 Funci ón que s i r v e para p e d i r l e e l nombre a l u s u a r i o y
saludarlo
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 nombre : dato s t r i n g r e s a d o por e l u s u a r i o
7 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 Retorna :
9 Saludo
10 """
11 #Bucle para l a v a r i a b l e nombre
12 w h i l e True :
13 #S e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
14 try :
15 #El u s u a r i o i n g r e s a su nombre y s e almacena en l a
v a r i a b l e nombre
16 nombre=s t r ( i n p u t ( " I n g r e s e su nombre : " ) )
17 #b re ak
18 b re ak
19 #S i e l u s u a r i o no i n g r e s ó un t i p o de dato s t r
20 except ValueError :
21 #Se l e comunica a l u s u a r i o que no i n g r e s ó un dato
vá l i d o
22 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
23 #Se imprime l a s o l u c i ón
24 p r i n t ( " Hola " , nombre , " B i e n v e n i d o : ) " )
Programacion
7
Universidad de las Fuerzas Armadas ESPE
8
Universidad de las Fuerzas Armadas ESPE
1 def paralelogramo () :
2 """
3 Funci ón Que C a l c u l a e l á r e a y p e r í metro de un
paralelogramo
4 −−−−−−−−−
5 Par á metros :
6 Base= Número f l o a t i n g r e s a d o por e l u s u a r i o
7 A l t u r a= Número f l o a t i n g r e s a d o por e l u s u a r i o
8 −−−−−−−−−
9 Retorna :
10 Area y Per í metro de un p a r a l e l o g r a m o
11 −−−−−−−−−
12 """
13 #Se i n i c i a un b u c l e
14 w h i l e True :
15 #S e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
16 try :
17 #El u s u a r i o i n g r e s a un t i p o de dato f l o a t y s e
almacena en l a v a r i a b l e b a s e
18 base = f l o a t ( input ( " I n g r e s e l a base : " ) )
19 #b re ak
20 b re ak
21 #S i e l u s u a r i o no i n g r e s ó un t i p o de dato f l o a t
22 except ValueError :
23 #Se l e n o t i f i c a a l u s u a r i o que i n g r e s ó un dato
incorrecto
24 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
25 #Se i n i c i a un b u c l e
26 w h i l e True :
27 #S e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
28 try :
29 #El u s u a r i o i n g r e s a un t i p o de dato f l o a t y s e
almacena en l a v a r i a b l e a l t u r a
30 altura = f l o a t ( input ( " Ingrese la altura : " ) )
31 #b re ak
32 b re ak
33 #S i e l u s u a r i o no i n g r e s ó un t i p o de dato f l o a t
34 except ValueError :
35 #Se l e n o t i f i c a a l u s u a r i o que i n g r e s ó un dato
incorrecto
36 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
37 #S i e s que e l c i l i n d r o e x i s t e l a b a s e y l a a l t u r a son
mayores que 0
38 i f base >0 and a l t u r a >0:
39 #Cá l c u l o d e l p e r í metro
40 p e r i m e t r o=a l t u r a+a l t u r a+b a s e+b a s e
9
Universidad de las Fuerzas Armadas ESPE
10
Universidad de las Fuerzas Armadas ESPE
1 def c i l i n d r o () :
2 """
3 Funci ón para c a l c u l a r e l á r e a de un c i l i n d r o
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
11
Universidad de las Fuerzas Armadas ESPE
6 r a d i o : v a l o r f l o a t i n g r e s a d o por e l u s u a r i o
7 a l t u r a _ c i l i n d r o : v a l o r f l o a t i n g r e s a d o por e l u s u a r i o
8 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
9 Retorna :
10 a r e a _ c i l i n d r o : v a l o r en u n i d a d e s cuadradas , r e s u l t a d o d e l
á rea del c i l i n d r o
11 """
12 #Se i n i c i a un b u c l e
13 w h i l e True :
14 #Se emplea l a s e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
15 try :
16 #El u s u a r i o i n g r e s a e l r a d i o de t i p o f l o a t en l a
variable radio
17 radio = f l o a t ( input ( " Ingrese e l radio : " ) )
18 #b re ak
19 b re ak
20 #S i e s que e l u s u a r i o i n g r e s a c u a l q u i e r o t r o dato que
no s e a de t i p o f l o a t
21 except ValueError :
22 #Se l e n o t i f i c a a l u s u a r i o que i n g r e s o un dato
erroneo
23 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
24 #Se i n i c i a o t r o b u c l e para l a v a r i a b l e a l t u r a _ c i l i n d r o
25 w h i l e True :
26 #Se emplea l a s e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
27 try :
28 #El u s u a r i o i n g r e s a l a a l t u r a de t i p o f l o a t en l a
variable altura_cilindro
29 a l t u r a _ c i l i n d r o = f l o a t ( input ( " Ingrese la altura : "
))
30 #b re ak
31 b re ak
32 #S i e s que e l u s u a r i o i n g r e s a c u a l q u i e r o t r o dato que
no s e a de t i p o f l o a t
33 except ValueError :
34 #Se l e n o t i f i c a a l u s u a r i o que i n g r e s o un dato
erroneo
35 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
36 #S i e s que e l r a d i o y a l t u r a i n g r e s a d o s por e l u s u a r i o son
mayores que 0
37 i f r a d i o >0 and a l t u r a _ c i l i n d r o > 0 :
38 #Se r e a l i z a l a o p e r a c i ón para e n c o n t r a r e l a r e a d e l
cilindro
39 a r e a _ c i l i n d r o = 2 ∗math . p i ∗ r a d i o ∗ ( r a d i o+a l t u r a _ c i l i n d r o
)
40 #Se imprime l a s o l u c i ón
41 p r i n t ( " El á r e a d e l c i l i n d r o e s : " , a r e a _ c i l i n d r o , "u^2" )
42 #S i e s que e l r a d i o y l a a l t u r a d e l c i l i n d r o son menores
que 0
43 else :
12
Universidad de las Fuerzas Armadas ESPE
44 #Se l e n o t i f i c a a l u s u a r i o que e l c i l i n d r o no e x i s t e
45 p r i n t ( " El c i l i n d r o no e x i s t e " )
46 #Se l e n o t i f i c a a l u s u a r i o que l o i n t e n t e de nuevo
47 p r i n t ( " I n t é n t e l o de nuevo ! " )
48 #Se v u e l v e a empezar
49 cilindro ()
Programacion
13
Universidad de las Fuerzas Armadas ESPE
1 def area_circulo () :
2 """
3 Funci ón para e n c o n t r a r e l á r e a de un c í r c u l o
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 r a d i o : Dato f l o a t i n g r e s a d o por e l u s u a r i o
7 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 Retorna :
9 area_del_c í r c u l o : Valor en u n i d a d e s c u a d r a d a s
c o r r e s p o n d i e n t e a l á r e a de un c í r c u l o
10 """
11 #Se i n i c i a un b u c l e
12 w h i l e True :
14
Universidad de las Fuerzas Armadas ESPE
Programacion
15
Universidad de las Fuerzas Armadas ESPE
16
Universidad de las Fuerzas Armadas ESPE
1 def potencia () :
2 """
3 Funci ón que s i r v e para c a l c u l a r l a p o t e n c i a de c u a l q u i e r n
úmero
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 x : Base de una p o t e n c i a
7 y : Exponente de una p o t e n c i a
8 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
9 Retorna :
10 potencia_numero : P o t e n c i a x^y
11 """
12 #Se i n i c i a un b u c l e para l a v a r i a b l e x
13 w h i l e True :
14 #S e n t e n c i a t r y / e x c e p t para v a l i d a d d a t o s
15 try :
16 #El u s u a r i o i n g r e s a un v a l o r f l o a t que s e almacena
en l a v a r i a b l e x
17 x=f l o a t ( i n p u t ( " I n g r e s e una b a s e x : " ) )
18 #b re ak
19 b re ak
20 #S i e s que e l u s u a r i o no i n g r e s ó un número f l o a t
21 except ValueError :
22 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
23 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
24 #Se i n i c i a un b u c l e para l a v a r i a b l e y
25 w h i l e True :
26 #S e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
27 try :
28 #El u s u a r i o i n g r e s a un v a l o r f l o a t que s e almacena
en l a v a r i a b l e y
29 y=f l o a t ( i n p u t ( " I n g r e s e un e x p o n e n t e y : " ) )
30 #b re ak
31 b re ak
32 #S i e l u s u a r i o no i n g r e s ó un v a l o r f l o a t
33 except ValueError :
34 #Se l e n o t i f i c a a l u s u a r i o que i n g r e s ó un dato i n v
á lido
35 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
36 #Se c a l c u l a l a p o t e n c i a d e l número
37 potencia_numero = x∗ ∗y
38 #Se imprime l a s o l u c i ón
39 p r i n t ( "La p o t e n c i a x^y e s i g u a l a : " , potencia_numero )
Programacion
17
Universidad de las Fuerzas Armadas ESPE
18
Universidad de las Fuerzas Armadas ESPE
1 d e f volumen _esfera ( ) :
2 """
3 Funci ón que p e r m i t e c a l c u l a r e l v o l úmen de una e s f e r a por
medio de un r a d i o i n g r e s a d o por e l u s u a r i o
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 r a d i o _ e s f e r a : Datos f l o a t i n g r e s a d o por e l u s u a r i o
7 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 Retorna :
9 volumen : Volumen de l a e s f e r a
10 """
11 #Bucle True para l a v a r i a b l e r a d i o _ e s f e r a
12 w h i l e True :
13 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
14 try :
15 #El u s u a r i o i n g r e s a un dato f l o a t y s e almacena en
la variable radio_esfera
16 r a d i o _ e s f e r a=f l o a t ( i n p u t ( " I n g r e s e e l r a d i o para
c a l c u l a r e l v o l úmen de una e s f e r a : " ) )
17 #b re ak
18 b re ak
19 #S i e l u s u a r i o no i n g r e s ó un t i p o de dato f l o a t
20 except ValueError :
21 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó de dato
22 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
23 #S i l a e s f e r a e x i s t e e l r a d i o e s mayor a 0
24 i f r a d i o _ e s f e r a >0:
25 #Se c a l c u l a e l v o l úmen
26 volumen=4/3∗math . p i ∗ ( r a d i o _ e s f e r a ∗ ∗ 3 )
19
Universidad de las Fuerzas Armadas ESPE
27 #Se imprime l a s o l u c i ón
28 p r i n t ( " El volumen de l a e s f e r a e s : " , volumen , "u^3" )
29 #S i e l r a d i o e s menor a 0 l a e s f e r a no e x i s t e
30 else :
31 #Se l e n o t i f i c a a l u s u a r i o que l a e s f e r a no e x i s t e
32 p r i n t ( "La e s f e r a no e x i s t e " )
33 #Se l e n o t i f i c a a l u s u a r i o que l o i n t e n t e de nuevo
34 p r i n t ( " I n t é n t e l o de nuevo ! " )
35 #Se r e p i t e e l p r o c e s o
36 volumen_esfera ( )
Programacion
20
Universidad de las Fuerzas Armadas ESPE
1 def area_perimetro_rectangulo () :
2 """
3 Se C a l c u l a e l á r e a y p e r í metro de un r e c t á n g u l o
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 a l t u r a : A l t u r a d e l r e c t á n g u l o i n g r e s a d o por e l u s u a r i o
7 b a s e : Base d e l r e c t á n g u l o i n g r e s a d o por e l u s u a r i o
8 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
9 Retorna :
10 a r e a _ d e l _ r e c t a n g u l o : C a l c u l a n d o Base xAltu ra
21
Universidad de las Fuerzas Armadas ESPE
11 p e r i m e t r o _ d e l _ r e c t a n g u l o : C a l c u l a n d o 2 Base+2A l t u r a
12 """
13 #Bucle para l a v a r i a b l e a l t u r a
14 w h i l e True :
15 #S e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
16 try :
17 #El u s u a r i o i n g r e s a un dato f l o a t y s e almacena en
la variable altura
18 a l t u r a=f l o a t ( i n p u t ( " I n g r e s e l a a l t u r a : " ) )
19 #b re ak
20 b re ak
21 #S i e l u s u a r i o no i n g r e s ó un v a l o r f l o a t
22 except ValueError :
23 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
24 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
25 #Bucle para l a v a r i a b l e b a s e
26 w h i l e True :
27 #S e n t e c i a t r y / e x c e p t para v a l i d a r d a t o s
28 try :
29 #El u s u a r i o i n g r e s a un dato f l o a t y s e almacena en
l a v a r i a b l e base
30 b a s e=f l o a t ( i n p u t ( " I n g r e s e l a b a s e : " ) )
31 #b re ak
32 b re ak
33 #S i e l u s u a r i o i n g r e s ó un dato i n v á l i d o
34 except ValueError :
35 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
36 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
37 #S i e l r e c t á n g u l o e x i s t e l a b a s e y l a a l t u r a deben s e r
mayores a 0
38 i f b a s e >0 and a l t u r a >0:
39 #Cá l c u l o a r e a d e l r e c t á n g u l o
40 a r e a _ d e l _ r e c t a n g u l o=b a s e ∗ a l t u r a
41 #Se imprime l a s o l u c i ón d e l á r e a d e l r e c t á n g u l o
42 p r i n t ( " El á r e a d e l r e c t á n g u l o e s : " , a r e a _ d e l _ r e c t a n g u l o
, "u^2" )
43 #Cá l c u l o p e r í metro d e l r e c t á n g u l o
44 p e r i m e t r o _ d e l _ r e c t a n g u l o=b a s e+b a s e+a l t u r a+a l t u r a
45 #Se imprime l a s o l u c i ón d e l p e r í metro d e l r e c t á n g u l o
46 p r i n t ( " El p e r í metro d e l r e c t á n g u l o e s : " ,
p e r i m e t r o _ d e l _ r e c t a n g u l o , "u" )
47 #S i e l r e c t á n g u l o no e x i s t e
48 else :
49 #Se l e n o t i f i c a a l u s u a r i o que e l r e c t á n g u l o no e x i s t e
50 p r i n t ( " El r e c t á n g u l o no e x i s t e " )
51 #Se l e anima a l u s u a r i o a i n t e n t a r l o de nuevo
52 p r i n t ( " I n t é n t e l o de nuevo ! " )
53 #Se v u e l v e a empezar
54 area_perimetro_rectangulo ()
22
Universidad de las Fuerzas Armadas ESPE
Programacion
23
Universidad de las Fuerzas Armadas ESPE
Programación Aqui se encuentra un menú para que el usuario elija que vari-
ante del Teorema de Pitágoras necesita:
1 d e f pitagoras_menu ( ) :
2 """
3 Menu para que e l u s u a r i o e l i j a que t i p o de c á l c u l o P i t a g ó
rico requiere
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 o p c i ó n _ p i t a g o r a s : Dato i n g r e s a d o s e g ún r e q u i e r a e l u s u a r i o
7 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 Retorna :
9 pitagoras_hipotenusa
10 pitagoras_cateto
11 """
12 #Se i n i c i a l i z a l a v a r i a b l e o p c i o n _ p i t a g o r a s
13 o p c i o n _ p i t a g o r a s=" "
14 #Bucle , m i e n t r a s l a o p c i o n e s c o g i d a s e a d i f e r e n t e de
cuatr0
15 w h i l e o p c i o n _ p i t a g o r a s != " 4 " :
16 #Se imprime e l menu
17 pitagoras_menu= """
18 MENU PITAGORAS
19 −−−−−−−−−−−−−−
20 1 . Calcular Hipotenusa
21 2 . C a l c u l a r Cateto F a l t a n t e
22 3 . V o l v e r a l menú p r i n c i p a l
23 −−−−−−−−−−−−−−
24 E l i j a su o p c i o n :
25 """
26 #El u s u a r i o i n g r e s a l a o p c i ón que d e s e a
27 o p c i o n _ p i t a g o r a s = i n p u t ( pitagoras_menu )
28 #S i l a o p c i ón e l e g i d a e s 1
24
Universidad de las Fuerzas Armadas ESPE
29 i f o p c i o n _ p i t a g o r a s==" 1 " :
30 #Se l l a m a a l a f u n c i ón para c a l c u l a r l a h i p o t e n u s a
31 pitagoras_hipotenusa ()
32 #b re ak
33 b re ak
34 #S i l a o p c i ón e l e g i d a e s 2
35 i f o p c i o n _ p i t a g o r a s==" 2 " :
36 #Se l l a m a a l a f u n c i ón para c a l c u l a r e l c a t e t o
faltante
37 pitagoras_cateto ()
38 #b re ak
39 b re ak
40 #S i l a o p c i ón e l e g i d a e s 3
41 i f o p c i o n _ p i t a g o r a s==" 3 " :
42 #Se v u e l v e a l menú p r i n c i p a l
43 menu ( )
Programacion
25
Universidad de las Fuerzas Armadas ESPE
1 def pitagoras_hipotenusa () :
2 """
3 Funci ón que c a l c u l a l a h i p o t e n u s a en un t r i á n g u l o r e c t á
ngulo
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á m e t e r o s :
6 cateto_1 : Cateto 1 i n g r e s a d o por e l u s u a r i o
7 cateto_2 : Cateto 2 i n g r e s a d o por e l u s u a r i o
8 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
9 Retorna :
10 h i p o t e n u s a : Se c a l c u l a l a h i p o t e n u s a
11 """
12 #Bucle para l a v a r i a b l e cateto_1
13 w h i l e True :
14 #S e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
26
Universidad de las Fuerzas Armadas ESPE
15 try :
16 #El u s u a r i o i n g r e s a un dato f l o a t y s e almacena en
l a v a r i a b l e cateto_1
17 cateto_1=f l o a t ( i n p u t ( " I n g r e s e e l v a l o r de un
cateto : ") )
18 #b re ak
19 b re ak
20 #El u s u a r i o no i n g r e s o un dato c o r r e c t o
21 except ValueError :
22 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
23 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
24 #Bucle para l a v a r i a b l e cateto_2
25 w h i l e True :
26 #S e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
27 try :
28 #El u s u a r i o i n g r e s a un dato f l o a t y s e almacena en
l a v a r i a b l e cateto_2
29 cateto_2=f l o a t ( i n p u t ( " I n g r e s e e l v a l o r d e l o t r o
cateto : ") )
30 #b re ak
31 b re ak
32 #El u s u a r i o no i n g r e s ó un dato c o r r e c t o
33 except ValueError :
34 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
35 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
36 #Para que e l r e c t á n g u l o e x i s t a e l c a t e t o 1 y e l c a t e t o 2
deben s e r mayores a 0
37 i f cateto_1 >0 and cateto_2 > 0 :
38 #Cá l c u l o de l a h i p o t e n u s a
39 h i p o t e n u s a=math . s q r t ( cateto_1 ∗ ∗2+cateto_2 ∗ ∗ 2 )
40 #S o l u c i ón de l a h i p o t e n u s a
41 p r i n t ( "La h i p o t e n u s a e s : " , h i p o t e n u s a )
42 #S i e l t r i á n g u l o no e x i s t e
43 else :
44 #Se l e n o t i f i c a a l u s u a r i o que e l t r i á n g u l o no e x i s t e
45 p r i n t ( " El t r i á n g u l o no e x i s t e " )
46 #Se l e n o t i f i c a a l u s u a r i o que l o i n t e n t e de nuevo
47 p r i n t ( " I n t é n t e l o de nuevo ! " )
48 #Se empieza d e s d e e l comienzo
49 pitagoras_hipotenusa ()
Programacion
27
Universidad de las Fuerzas Armadas ESPE
28
Universidad de las Fuerzas Armadas ESPE
1 def pitagoras_cateto () :
2 """
3 Funci ón para c a l c u l a r e l c a t e t o f a l t a n t e en un t r i á n g u l o
r e c t á ngulo
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 c a t e t o : Cateto i n g r e s a d o por e l u s u a r i o
7 h i p o t e n u s a : H ip o t e n u s a i n g r e s a d o por e l u s u a r i o
8 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
9 Retorna :
10 c a t e t o _ f a l t a n t e : Cateto que hace f a l t a
11 """
12 #Bucle para l a v a r i a b l e c a t e t o
13 w h i l e True :
14 #s e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
15 try :
16 #El u s u a r i o i n g r e s a un dato f l o a t que s e almacena
en l a v a r i a b l e c a t e t o
17 c a t e t o=f l o a t ( i n p u t ( " I n g r e s e e l v a l o r de un c a t e t o :
") )
18 #b re ak
19 b re ak
20 #S i e l u s u a r i o i n g r e s ó un v a l o r i n c o r r e c t o
21 except ValueError :
22 #Se l e n o t i f i c a a l u s u a r i o que i n g r e s ó un dato i n v
á lido
23 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
24 #Bucle para l a v a r i a b l e h i p o t e n u s a
25 w h i l e True :
26 #S e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
27 try :
28 #El u s u a r i o i n g r e s a un dato f l o a t que s e almacena
en l a v a r i a b l e h i p o t e n u s a
29 h i p o t e n u s a=f l o a t ( i n p u t ( " I n g r e s e e l v a l o r de l a
hipotenusa : " ) )
29
Universidad de las Fuerzas Armadas ESPE
30 #b re ak
31 b re ak
32 #S i e l u s u a r i o i n g r e s ó un dato i n c o r r e c t o
33 except ValueError :
34 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
35 p r i n t ( " I n g r e s e un v a l o r vá l i d o ! " )
36 #S i e l t r i á n g u l o e x i s t e l a h i p o t e n u s a y e l c a t e t o e s mayor
que 0
37 i f h i p o t e n u s a >0 and c a t e t o >0:
38 #Cá l c u l o d e l c a t e t o f a l t a n t e
39 c a t e t o _ f a l t a n t e=math . s q r t ( h i p o t e n u s a ∗ ∗2− c a t e t o ∗ ∗ 2 )
40 #Se imprime l a s o l u c i ón
41 p r i n t ( " El c a t e t o f a l t a n t e e s : " , c a t e t o _ f a l t a n t e )
42 #S i e l t r i á n g u l o no e x i s t e
43 else :
44 #Se l e n o t i f i c a a l u s u a r i o que e l t r i á n g u l o no e x i s t e
45 p r i n t ( " El t r i á n g u l o no e x i s t e " )
46 #Se l e n o t i f i c a a l u s u a r i o que l o i n t e n t e de nuevo
47 p r i n t ( " I n t é n t e l o de nuevo ! " )
48 #s e empieza d e s d e e l comienzo
49 pitagoras_cateto ()
Programacion
30
Universidad de las Fuerzas Armadas ESPE
1 def calculo_expresion () :
2 """
3 Funci ón para c a l c u l a r l a e x p r e s i ón y=x^z /2
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
31
Universidad de las Fuerzas Armadas ESPE
6 x : Dato f l o a t i n g r e s a d o por e l u s u a r i o e s l a b a s e de l a
potencia
7 z : Dato f l o a t i n g r e s a d o por e l u s u a r i o e s e l e x p on e n t e de
la potencia
8 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
9 Retorna :
10 e x p r e s i o n : R e s u l t a d o de l a e x p r e s i ón
11 """
12 #Bucle para l a v a r i a b l e x
13 w h i l e True :
14 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a o t s
15 try :
16 #El u s u a r i o i n g r e s a un v a l o r f l o a t y s e almacena
en l a v a r i a b l e x
17 x=f l o a t ( i n p u t ( " I n g r e s e e l v a l o r de x : " ) )
18 #b re ak
19 b re ak
20 #S i e l u s u a r i o i n g r e s o un dato i n v á l i d o
21 except ValueError :
22 #Se l e comunica a l u s u a r i o que s e e q u i v o c ó
23 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
24 #Bucle para l a v a r i a b l e z
25 w h i l e True :
26 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
27 try :
28 #El u s u a r i o i n g r e s a un v a l o r f l o a t y s e almacena
en l a v a r i a b l e z
29 z=f l o a t ( i n p u t ( " I n g r e s e e l v a l o r de z : " ) )
30 #b re ak
31 b re ak
32 #S i e l u s u a r i o i n g r e s a un dato i n v á l i d o
33 except ValueError :
34 #Se l e comunica a l u s u a r i o que s e e q u i v o c ó
35 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
36 #Cá l c u l o de l a e x p r e s i ón
37 e x p r e s i o n =(x∗ ∗ z ) /2
38 #Se imprime l a s o l u c i ón
39 p r i n t ( "La e x p r e s i ón e s i g u a l a y=" , e x p r e s i o n )
Programacion
32
Universidad de las Fuerzas Armadas ESPE
33
Universidad de las Fuerzas Armadas ESPE
1 def velocidad_fisica () :
2 """
3 Funci ón para c a l c u l a r l a r a p i d e z , t e n i e n d o e l tiempo y l a
distancia
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 tiempo : Dato i n g r e s a d o por e l u s u a r i o
7 d i s t a n c i a : Dato i n g r e s a d o por e l u s u a r i o
8 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
9 Retorna :
10 v e l o c i d a d : Cá l c u l o de l a d i s t a n c i a d i v i d i d a para e l tiempo
11 """
12 #Bucle para l a v a r i a b l e tiempo
13 w h i l e True :
14 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
15 try :
16 #El u s u a r i o i n g r e s a e l tiempo y s e almacena en l a
v a r i a b l e tiempo
17 tiempo=f l o a t ( i n p u t ( " I n g r e s e e l tiempo en s e g u n d o s :
") )
18 #b re ak
19 b re ak
20 #S i e l u s u a r i o i n g r e s ó un dato i n v á l i d o
21 except ValueError :
22 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
23 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
24 #Bucle para l a v a r i a b l e d i s t a n c i a
25 w h i l e True :
26 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
27 try :
28 #El u s u a r i o i n g r e s a l a d i s t a n c i a y s e almacena en
la variable distancia
29 d i s t a n c i a=f l o a t ( i n p u t ( " I n g r e s e l a d i s t a n c i a en
metros : " ) )
30 #b re ak
31 b re ak
32 #S i e l u s u a r i o i n g r e s ó un dato i n v á l i d o
33 except ValueError :
34 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
35 p r i n t ( " I n g r e s e un v a l o r vá l i d o " )
36 #S i l a d i s t a n c i a y e l tiempo son mayores a c e r o l a r a p i d e z
existe
37 i f d i s t a n c i a > 0 and tiempo >0:
38 #Cá l c u l o de l a v e l o c i d a d
39 v e l o c i d a d=d i s t a n c i a / tiempo
40 #Se imprime l a s o l u c i ón
41 p r i n t ( "La r a p i d e z e s i g u a l a : " , v e l o c i d a d , "m/ s ^2" )
42 #S i l a r a p i d e z no e x i s t e
43 else :
34
Universidad de las Fuerzas Armadas ESPE
44 #Se l e i n f o r m a a l u s u a r i o que no e x i s t e l a r a p i d e z
45 p r i n t ( "No e x i s t e n t i e m p o s y/ o d i s t a n c i a s n e g a t i v a s " )
46 #Se l e d i c e a l u s u a r i o que l o i n t e n t e de nuevo
47 p r i n t ( " I n t é n t e l o de nuevo ! " )
48 #Se r e p i t e l e p r o c e s o
49 velocidad_fisica ()
Programacion
35
Universidad de las Fuerzas Armadas ESPE
1 def calculo_densidad () :
2 """
3 Funci ón para c a l c u l a r l a d e n s i d a d de un o b j e t o
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 masa : Valor i n g r e s a d o por e l u s u a r i o
7 volumen : Valor i n g r e s a d o por e l u s u a r i o
8 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
9 Retorna :
36
Universidad de las Fuerzas Armadas ESPE
10 densidad
11 """
12 #Bucle para l a v a r i a b l e masa
13 w h i l e True :
14 #S e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
15 try :
16 #El u s u a r i o i n g r e s a e l dato de l a masa
17 masa=f l o a t ( i n p u t ( " I n g r e s e l a masa d e l o b j e t o en
kgs : " ) )
18 #b re ak
19 b re ak
20 #S i e l u s u a r i o i n g r e s ó un dato i n v á l i d o
21 except ValueError :
22 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
23 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
24 #Bucle para l a v a r i a b l e volumen
25 w h i l e True :
26 #S e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
27 try :
28 #El u s u a r i o i n g r e s a e l dato d e l v o l úmen
29 volumen=f l o a t ( i n p u t ( " I n g r e s e e l volumen en m^ 3 : " ) )
30 #b re ak
31 b re ak
32 #S i e l u s u a r i o i n g r e s ó un dato i n v á l i d o
33 except ValueError :
34 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
35 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
36 #S i l a d e n s i d a d e x i s t e
37 i f masa>0 and volumen >0:
38 #Cá l c u l o de l a d e n s i d a d
39 d e n s i d a d=masa/ volumen
40 #Se imprime l a s o l u c i ón
41 p r i n t ( "La d e n s i d a d e s i g u a l a : " , densidad , " kg /m^3" )
42 #S i l a d e n s i d a d no e x i s t e
43 else :
44 #Se l e n o t i f i c a a l u s u a r i o que l a d e n s i d a d no e x i s t e
45 p r i n t ( "No e x i s t e n masa y/ o volumen menor o i g u a l a 0 " )
46 #Se l e a l i e n t a a l u s u a r i o a empezar de nuevo
47 p r i n t ( " I n t é n t e l o de nuevo ! " )
48 #Se empieza de nuevo
49 calculo_densidad ()
Programacion
37
Universidad de las Fuerzas Armadas ESPE
38
Universidad de las Fuerzas Armadas ESPE
1 def conversion_dias () :
2 """
3 Funci ón para c o n v e r t i r d í a s en añ os , meses y semanas
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metro :
6 d i a s : Dato i n g r e s a d o por e l u s u a r i o
7 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 Retorna :
9 añ o s : d i a s c o n v e r t i d o s en añ o s
10 meses : d i a s c o n v e r t i d o s en meses
11 semanas : d i a s c o n v e r t i d o s en semanas
12 """
13 #Bucle para l a v a r i a b l e d i a s
14 w h i l e True :
15 #S e n t e n c i a t r y / e x c e p t para v a l i d a r d a t o s
16 try :
17 #El u s u a r i o i n g r e s a e l número de d í a s
18 d i a s=i n t ( i n p u t ( " I n g r e s e e l número de d í a s : " ) )
19 #b re ak
20 b re ak
21 #S i e l u s u a r i o i n g r e s ó un dato e q u i v o c a d o
22 except ValueError :
23 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
24 p r i n t ( " I n g r e s e un v a l o r vá l i d o " )
25 #S i l a c o n v e r s i ón puede r e a l i z a r s e
26 i f d i a s >= 0 :
27 #C o n v e r s i ón a añ o s
28 añ o s=d i a s //365
29 #Se imprime l o s d i a s t r a s n f o r m a d o s en añ o s
39
Universidad de las Fuerzas Armadas ESPE
Programacion
40
Universidad de las Fuerzas Armadas ESPE
1 def conversion_longitud () :
2 """
3 Funci ón para c o n v e r t i r cm en m y km
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 c e n t i m e t r o s : Dato i n g r e s a d o por e l u s u a r i o
7 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 Retorna :
9 metros : cm t r a n s f o r m a d o s en m
10 k i l o m e t r o s : cm t r a n s f o r m a d o s en km
11 """
12 #Bucle para l a v a r i a b l e c e n t í metros
13 w h i l e True :
41
Universidad de las Fuerzas Armadas ESPE
14 #S e n t e n c i a para v a l i d a c i ón de d a t o s
15 try :
16 #El u s u a r i o i n g r e s a e l v a l o r de l o s c e n t í metros
17 c e n t i m e t r o s=i n t ( i n p u t ( " I n g r e s e l a l o n g i t u d en cm : "
))
18 #b re ak
19 b re ak
20 #S i e l u s u a r i o no i n g r e s ó un v a l o r c o r r e c t o
21 except ValueError :
22 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
23 p r i n t ( " I n g r e s e un v a l o r vá l i d o " )
24 #S i l a c o n v e r s i ón puede r e a l i z a r s e
25 i f c e n t i m e t r o s >=0:
26 #C o n v e r s i ón a metros
27 metros=c e n t i m e t r o s //100
28 #Se imprime l a c o n v e r s i ón a metros
29 p r i n t ( c e n t i m e t r o s , "cm son : " , metros , "m" )
30 #C o n v e r s i ón a k i l ó metros
31 k i l o m e t r o s=c e n t i m e t r o s //1000
32 #Se imprime l a c o n v e r s i ón a k i l ó metros
33 p r i n t ( c e n t i m e t r o s , "cm son : " , k i l o m e t r o s , "km" )
34 #S i l a c o n v e r s i ón no puede r e a l i z a r s e
35 else :
36 #Se l e n o t i f i c a a l u s u a r i o que no puede r e a l i z a r s e l a
c o n v e r s i ón
37 p r i n t ( " I n g r e s e un v a l o r mayor o i g u a l a 0 " )
38 #Se a l i e n t a a l u s u a r i o a empezar de 0
39 p r i n t ( " I n t é n t e l o de nuevo ! " )
40 #Se i n i c i a de nuevo e l p r o c e s o
41 conversion_longitud ()
Programacion
42
Universidad de las Fuerzas Armadas ESPE
1 d e f menu_temperatura ( ) :
2 """
3 Funci ón de menú para que e l u s u a r i o e s c o j a que
t r a n s f o r m a c i ón q u i e r e r e a l i z a r
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
43
Universidad de las Fuerzas Armadas ESPE
5 Par á metros :
6 opcion_temperatura : Opci ón que e s c o j a e l u s u a r i o s e g ún
requiera
7 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 Retorna :
9 conversion_celsius
10 conversion_fahrenheit
11 """
12 #Se i n i c i a l i z a l a v a r i a b l e opcion_temperatura
13 opcion_temperatura=" "
14 #Bucle m i e n t r a s l a o p c i ón no s e a 4
15 w h i l e opcion_temperatura != " 4 " :
16 #Se imprime e l menú
17 menu_temperatura= """
18 MENU TEMPERATURA
19 −−−−−−−−−−−−−−
20 1 . C o n v e r t i r de C a F
21 2 . C o n v e r t i r de F a C
22 3 . V o l v e r a l menú p r i n c i p a l
23 −−−−−−−−−−−−−−
24 E l i j a su o p c i o n :
25 """
26 #El u s u a r i o i n g r e s a l a c o n v e r s i ón que r e q u i e r a
27 opcion_temperatura = i n p u t ( menu_temperatura )
28 #S i e s c o g i ó 1
29 i f opcion_temperatura==" 1 " :
30 #Se l l a m a a l a f u n c i ón c o n v e r s i ón a c e l c i u s
31 conversion_celcius ()
32 #b re ak
33 b re ak
34 #S i e s c o g i ó l a o p c i ón 2
35 i f opcion_temperatura==" 2 " :
36 #Se l l a m a a l a f u n c i ón c o n v e r s i ón a f a h r e n h e i t
37 conversion_fahrenheit ()
38 #b re ak
39 b re ak
40 #S i e s c o g i ó l a o p c i ón 3
41 i f opcion_temperatura==" 3 " :
42 #Se r e t o r n a a l menú p r i n c i p a l
43 menu ( )
Programacion
44
Universidad de las Fuerzas Armadas ESPE
45
Universidad de las Fuerzas Armadas ESPE
1 def conversion_celcius () :
2 """
3 Funci ón para c o n v e r t i r C a F
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 c e l s i u s : Dato i n g r e s a d o por e l u s u a r i o
7 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 Retorna :
9 fahrenheit : C convertidos a F
10 """
11 #Bucle para l a v a r i a b l e c e l s i u s
12 w h i l e True :
13 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
14 try :
15 #El u s u a r i o i n g r e s a l o s g r a d o s c e l s i u s
16 c e l s i u s=f l o a t ( i n p u t ( " I n g r e s e l a t e m p e r a t u r a en C
: ") )
17 #b re ak
18 b re ak
19 #S i e l u s u a r i o i n g r e s ó un dato i n v á l i d o
20 except ValueError :
21 #Se l e n o t i f i c a a l u s u a r i o que i n g r e s ó un dato i n v
á lido
22 p r i n t ( " I n g r e s e un dato c o r r e c t o ! " )
23 #C o n v e r s i ón a F
24 f a h r e n h e i t =( c e l s i u s ∗ 9 / 5 ) +32
25 #Imprime l a c o n v e r s i ón
26 p r i n t ( c e l s i u s , " C son : " , f a h r e n h e i t , " F " )
Programacion
46
Universidad de las Fuerzas Armadas ESPE
1 def conversion_fahrenheit () :
2 """
3 Funci ón para c o n v e r t i r F a C
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 f a h r e n h e i t : Dato i n g r e s a d o por e l u s u a r i o
7 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 Retorna :
9 c e l c i u s : C o n v e r s i ón de F a C
10 """
11 #Bucle para l a v a r i a b l e f a h r e n h e i t
12 w h i l e True :
13 #S e n t e n c i a t r r y / e x c e p t para v a l i d a c i ón de d a t o s
14 try :
15 #El u s u a r i o i n g r e s a l o s F
16 f a h r e n h e i t=f l o a t ( i n p u t ( " I n g r e s e l a t e m p e r a t u r a en
F : ") )
17 #b re ak
18 b re ak
47
Universidad de las Fuerzas Armadas ESPE
19 #S i e l u s u a r i o no i n g r e s ó un dato vá l i d o
20 except ValueError :
21 #Se l e n o t i f i c a a l u s u a r i o que i n g r e s ó un dato
erroneo
22 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
23 #C o n v e r s i ón de F a C
24 c e l c i u s =( f a h r e n h e i t −32)∗ 5/9
25 #Se imprime l a c o n v e r s i ón a C
26 p r i n t ( f a h r e n h e i t , " F son : " , c e l c i u s , " C " )
Programacion
48
Universidad de las Fuerzas Armadas ESPE
1 def convertir_libras () :
2 """
3 Funci ón para c o n v e r t i r l i b r a s a k i l o s y gramos
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 l i b r a s : Dato i n g r e s a d o por e l u s u a r i o
7 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 Retorna :
9 k i l o s : C o n v e r s i ón de l b s a kg
10 gramos : C o n v e r s i ón de l b s a g
11 """
12 #Bucle para l a v a r i a b l e l i b r a s
13 w h i l e True :
14 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
15 try :
16 #El u s u a r i o i n g r e s a e l número de l i b r a s
17 l i b r a s=f l o a t ( i n p u t ( " I n g r e s e e l v a l o r en l i b r a s : " ) )
18 #b re ak
19 b re ak
20 #S i e l u s u a r i o i n g r e s ó un dato i n v á l i d o
21 except ValueError :
22 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
23 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
24 #S i l a c o n v e r s i ón de l i b r a s e s p o s i b l e r e a l i z a r s e
25 i f l i b r a s >=0:
26 #C o n v e r s i ón de l i b r a s a k i l o s
27 k i l o s=l i b r a s / 2 . 2 0 4 6
28 #Se imprime l a c o n v e r s i o n de l i b r a s a k i l o s
29 p r i n t ( l i b r a s , " l b s son : " , k i l o s , " kg " )
30 #C o n v e r s i ón de l i b r a s a gramos
49
Universidad de las Fuerzas Armadas ESPE
31 gramos=l i b r a s ∗ 4 5 3 . 5 9 2 3 7
32 #Se imprime l a c o n v e r s i ón de l i b r a s a gramos
33 p r i n t ( l i b r a s , " l b s son : " , gramos , " g " )
34 #S i l a c o n v e r s i ón no puede r e a l i z a r s e
35 else :
36 #Se l e n o t i f i c a a l u s u a r i o que i n g r e s e un v a l o r i g u a l
o mayor a 0
37 p r i n t ( " I n g r e s e un v a l o r i g u a l o mayor a 0 " )
38 #Se anima a l u s u a r i o a i n t e n t a r l o de nuevo
39 p r i n t ( " I n t é n t e l o de nuevo ! " )
40 #Se empieza d e s d e e l comienzo
41 convertir_libras ()
Programacion
50
Universidad de las Fuerzas Armadas ESPE
1 def raiz_cuadrada ( ) :
2 """
3 Funci ón para e n c o n t r a r l a r a i z cuadrada de c u a l q u i e r nú
mero
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 número : Dato i n g r e s a d o por e l u s u a r i o
7 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 Retorna :
9 r a i z : Ra í z cuadrada d e l número i n g r e s a d o
10 """
11 #Bucle para l a v a r i a b l e numero
12 w h i l e True :
13 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
14 try :
15 #El u s u a r i o i n g r e s a un número
16 numero=f l o a t ( i n p u t ( " I n g r e s e un número : " ) )
17 #b re ak
51
Universidad de las Fuerzas Armadas ESPE
18 b re ak
19 #S i e l u s u a r i o no i n g r e s ó un dato vá l i d o
20 except ValueError :
21 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
22 p r i n t ( " I n g r e s e un v a l o r vá l i d o ! " )
23 #S i l a r a í z e s de un número n a t u r a l
24 i f numero >=0:
25 #Cá l c u l o de l a r a í z
26 r a i z=math . s q r t ( numero )
27 #Se imprime l a s o l u c i ón de l a r a í z
28 p r i n t ( "La r a í z cuadrada de : " , numero , " e s : " , r a i z )
29 #S i l a r a í z cuadrada e s un número i m a g i n a r i o
30 else :
31 #Cá l c u l o de l a r a í z
32 r a i z 2=math . s q r t ( numero∗ ( −1) )
33 #Se imprime l a s o l u c i ón de l a r a í z i m a g i n a r i a
34 p r i n t ( "La r a í z cuadrada de : " , numero , " e s : " , r a i z 2 , " i " )
Programacion
52
Universidad de las Fuerzas Armadas ESPE
1 def encontrar_angulo ( ) :
2 """
3 Funci ón para e n c o n t r a r e l á n g u l o r e s t a n t e de un t r i á n g u l o
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 angulo_1 : Dato i n g r e s a d o por e l u s u a r i o
7 angulo_2 : Dato i n g r e s a d o por e l u s u a r i o
8 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
9 Retorna :
10 a n g u l o _ f a l t a n t e : El á n g u l o que f a l t a d e l t r i á n g u l o
11 """
12 #Bucle para l a v a r i a b l e angulo_1
13 w h i l e True :
14 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
15 try :
53
Universidad de las Fuerzas Armadas ESPE
16 #El u s u a r i o i n g r e s a e l á n g u l o 1
17 angulo_1=f l o a t ( i n p u t ( " I n g r e s e e l á n g u l o 1 : " ) )
18 #b re ak
19 b re ak
20 #S i e l u s u a r i o i n g r e s ó un dato i n v á l i d o
21 except ValueError :
22 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
23 p r i n t ( " I n g r e s e un v a l o r vá l i d o ! " )
24 #Bucle para l a v a r i a b l e angulo_2
25 w h i l e True :
26 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
27 try :
28 #El u s u a r i o i n g r e s a e l á n g u l o 2
29 angulo_2=f l o a t ( i n p u t ( " I n g r e s e e l á n g u l o 2 : " ) )
30 #b re ak
31 b re ak
32 #S i e l u s u a r i o i n g r e s ó i n dato i n v á l i d o
33 except ValueError :
34 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
35 p r i n t ( " I n g r e s e un v a l o r vá l i d o ! " )
36 #Se v e r i f i c a que e l t r i á n g u l o e x i s t a
37 i f angulo_1 >0 and angulo_2 > 0 and angulo_1+angulo_2 <180:
38 #Cá l c u l o d e l á n g u l o f a l t a n t e
39 a n g u l o _ f a l t a n t e =180−(angulo_1+angulo_2 )
40 #Se imprime e l á n g u l o f a l t a n t e
41 p r i n t ( " El á n g u l o f a l t a n t e e s : " , a n g u l o _ f a l t a n t e )
42 #S i no e x i s t e e l t r i á n g u l o
43 else :
44 #Se l e n o t i f i c a a l u s u a r i o que e l t r i á n g u l o no e x i s t e
45 p r i n t ( " Los á n g u l o s que u s t e d i n g r e s ó no c o r r e s p o n d e n a
un t r i á n g u l o ! " )
46 #Se l e a l i e n t a a l u s u a r i o a i n t e n t a r l o de nuevo
47 p r i n t ( " I n t é n t e l o de nuevo ! " )
48 #Se empieza de nuevo d e s d e 0
49 encontrar_angulo ( )
Programacion
54
Universidad de las Fuerzas Armadas ESPE
55
Universidad de las Fuerzas Armadas ESPE
1 def area_triangulo () :
2 """
3 Funci ón para c o n t r o l a r e l á r e a de un t r i á n g u l o
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 b a s e _ t r i a n g u l o : Dato i n g r e s a d o por e l u s u a r i o
7 a l t u r a _ t r i a n g u l o : Dato i n g r e s a d o por e l u s u a r i o
8 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
9 Retorna :
10 a r e a _ d e l _ t r i a n g u l o : Cá l c u l o d e l á r e a d e l t r i á n g u l o
11 """
12 #Bucle para l a v a r i a b l e b a s e _ t r i a n g u l o
13 w h i l e True :
14 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
15 try :
16 #El u s u a r i o i n g r e s a l a b a s e d e l t r i á n g u l o
17 b a s e _ t r i a n g u l o=f l o a t ( i n p u t ( " I n g r e s e l a b a s e de un
t r i á ngulo : " ) )
18 #b re ak
19 b re ak
20 #S i e l u s u a r i o no i n g r e s ó un dato vá l i d o
21 except ValueError :
22 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
23 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
24 #Bucle para l a v a r i a b l e a l t u r a _ t r i a n g u l o
25 w h i l e True :
26 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
27 try :
28 #El u s u a r i o i n g r e s a l a a l t u r a d e l t r i á n g u l o
29 a l t u r a _ t r i a n g u l o=f l o a t ( i n p u t ( " I n g r e s e l a a l t u r a de
un t r i á n g u l o : " ) )
30 #b re ak
31 b re ak
32 #S i e l u s u a r i o no i n g r e s ó un dato vá l i d o
33 except ValueError :
34 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
35 p r i n t ( " I n g r e s e un dato vá l i d o ! " )
36 #S i e l t r i á n g u l o e x i s t e
37 i f b a s e _ t r i a n g u l o >0 and a l t u r a _ t r i a n g u l o > 0 :
38 #Cá l c u l o d e l á r e a d e l t r i á n g u l o
39 a r e a _ d e l _ t r i a n g u l o =( b a s e _ t r i a n g u l o ∗ a l t u r a _ t r i a n g u l o ) /2
40 #Se imprime l a s o l u c i ón d e l á r e a d e l t r i á n g u l o
41 p r i n t ( " El á r e a d e l t r i á n g u l o e s : " , a r e a _ d e l _ t r i a n g u l o , "
u^2" )
42 #S i e l t r i á n g u l o no e x i s t e
43 else :
44 #Se l e n o t i f i c a a l u s u a r i o que e l t r i á n g u l o no e x i s t e
56
Universidad de las Fuerzas Armadas ESPE
45 p r i n t ( " El t r i á n g u l o no e x i s t e " )
46 #Se a l i e n t a a l u s u a r i o a i n t e n t a r l o de nuevo
47 p r i n t ( " I n t é n t e l o de nuevo ! " )
48 #Se empieza d e s d e e l comienzo
49 area_triangulo ()
Programacion
57
Universidad de las Fuerzas Armadas ESPE
1 def aritmetica () :
2 """
3 Funci ón para c a l c u l a r l a s c u a t r o o p e r a c i o n e s bá s i c a s
mediante dos números
4
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metros :
6 numero_1 : Dato i n g r e s a d o por e l u s u a r i o
7 numero_2 : Dato i n g r e s a d o por e l u s u a r i o
8
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
58
Universidad de las Fuerzas Armadas ESPE
9 Retorna :
10 suma
11 resta
12 m u l t i p l i c a c i ón
13 d i v i s i ón
14 """
15 #Bucle para l a v a r i a b l e numero_1
16 w h i l e True :
17 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
18 try :
19 #El u s u a r i o i n g r e s a e l número 1
20 numero_1=f l o a t ( i n p u t ( " I n g r e s e e l número 1 : " ) )
21 #b re ak
22 b re ak
23 #S i e l u s u a r i o i n g r e s ó un dato i n v á l i d o
24 except ValueError :
25 #Se l e comunica a l u s u a r i o que i n g r e s ó un dato i n v
á lido
26 p r i n t ( " I n g r e s e un dato i n v á l i d o ! " )
27 #Bucle para l a v a r i a b l e numero_2
28 w h i l e True :
29 #S e n t e n c i a t r y / e x c e p t para v a l i d a c i ón de d a t o s
30 try :
31 #El u s u a r i o i n g r e s a e l número 2
32 numero_2=f l o a t ( i n p u t ( " I n g r e s e e l número 2 : " ) )
33 #b re ak
34 b re ak
35 #S i e l u s u a r i o i n g r e s a un dato i n v á l i o d
36 except ValueError :
37 #Se l e comunica a l u s u a r i o que i n g r e s ó un dato i n v
á lido
38 p r i n t ( " I n g r e s e un dato i n v á l i d o ! " )
39 #Se imprimen l a s s o l u c i o n e s
40 p r i n t ( " Las o p e r a c i o n e s bá s i c a s con l o s números i n g r e s a d o s
son : " )
41 #Cá l c u l o de l a suma
42 suma=numero_1+numero_2
43 #I m p r e s i ón de l a suma
44 p r i n t ( numero_1 , "+" , numero_2 , "=" , suma )
45 #Cá l c u l o de l a r e s t a
46 r e s t a=numero_1−numero_2
47 #I m p r e s i ón de l a r e s t a
48 p r i n t ( numero_1 , "−" , numero_2 , "=" , r e s t a )
49 #Cá l c u l o de l a m u l t i p l i c a c i ón
50 m u l t i p l i c a c i o n=numero_1∗numero_2
51 #I m p r e s i ón de l a m u l t i p l i c a c i ón
52 p r i n t ( numero_1 , " ∗ " , numero_2 , "=" , m u l t i p l i c a c i o n )
53 #D i v i s i ón que e s t á determinada
54 i f numero_2 != 0 :
55 #Cá l c u l o de l a d i v i s i ón
59
Universidad de las Fuerzas Armadas ESPE
56 d i v i s i o n=numero_1/numero_2
57 #I m p r e s i ón de l a d i v i s i ón
58 p r i n t ( numero_1 , " / " , numero_2 , "=" , d i v i s i o n )
59 #D i v i s i ón para 0
60 else :
61 #D i v i s i ón i n d e t e r m i n a d a
62 p r i n t ( numero_1 , " / " , numero_2 , "= I n d e t e r m i n a d o " )
Programacion
60
Universidad de las Fuerzas Armadas ESPE
1 def c i r c u l o () :
2 """
3 Funci ón para e n c o n t r a r e l d i á metro , l a c i r c u n f e r e n c i a y e l
á rea del c í rculo
4 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
5 Par á metro :
6 r a d i o _ c i r c u l o : Dato i n g r e s a d o por e l u s u a r i o
7 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
8 Retorna :
9 diametro
10 circunferencia
11 area
12 """
13 #Bucle para l a v a r i a b l e r a d i o _ c i r c u l o
14 w h i l e True :
15 #S e n t e n c i a t r y / e x c e p t
16 try :
17 #El u s u a r i o i n g r e s a e l r a d i o d e l c í r c u l o
18 r a d i o _ c i r c u l o=f l o a t ( i n p u t ( " I n g r e s e e l r a d i o de un
c í rculo : ") )
19 #b re ak
20 b re ak
21 #S i e l u s u a r i o i n g r e s a un dato i n v á l i d o
22 except ValueError :
23 #Se l e n o t i f i c a a l u s u a r i o que s e e q u i v o c ó
61
Universidad de las Fuerzas Armadas ESPE
Programacion
62
Universidad de las Fuerzas Armadas ESPE
4 Discusión
Los resultados arrojados son los requeridos, a pesar de que en los cálculos no está
presente la utilización de cifras significativas. La validación y verificación en el
ingreso de datos es la base primordial de cada ejercicio ya que brinda al usuario
una experiencia más completa, mostrándole la existencia o no de ciertos procesos
al utilizar números negativos, en problemas como el cálculo de áreas, densidad,
longitudes no se pueden utilizar números negativos; mientras que en problemas
que involucran temperatura, cálculo de expresiones o aritmética, se puede uti-
lizar cualquier valor numérico, aún cuando existen divisiones indeterminadas o
divisiones para cero.
5 Conclusiones
Python ha ido en ascenso a lo largo de los años, y está de moda, haciendo
temblar esos lenguajes que parecen inmortales. Es un lenguaje de programación
fácil de aprender, perfecto para principiantes. Tiene muchos usos y un sinfín
de usos, tiene una comunidad muy activa lo que garantiza que el lenguaje se
mantendrá actualizado con el tiempo y aparecerán nuevas bibliotecas que nos
permitirán ahorrar tiempo y trabajo. Además, como hemos visto, Python ofrece
muchas ventajas a todos sus usuarios, entre ellas: es muy simple, flexible y fácil
de aprender. Con una sintaxis sencilla y un buen uso de los espacios de sangría,
hacen que aprender, leer e incluso compartir sea muy fácil.
63