Sie sind auf Seite 1von 26

Programacin Digital (IC246)

Gua de Programacin para Python 3.x

Docente: M.Sc. Ing. Edmundo Canchari Gutirrez

Universidad Nacional de San Cristbal de Huamanga


Escuela Profesional de Ingeniera Civil

15 de octubre de 2017

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 1 / 26
Contenido
1 Algoritmos
2 Elementos del Lenguaje de programacin
3 Programacin modular
4 Programacin estructurada
Estructuras de decisin
Estructuras iterativas
5 Matrices
6 Grficos
Contenido
1 Algoritmos
2 Elementos del Lenguaje de programacin
3 Programacin modular
4 Programacin estructurada
Estructuras de decisin
Estructuras iterativas
5 Matrices
6 Grficos
Algoritmo

Definicin de algoritmo
Un algoritmo es un conjunto de instrucciones o reglas bien definidas,
ordenadas y finitas que permite llevar a cabo una actividad mediante pasos
sucesivos que no generen dudas a quien deba hacer dicha actividad.

Medios de expresin de un algoritmo


Diagrama de flujo.
Pseudocdigos.
Diagrama Nassi-Shneiderman (diagramas NS).
...

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 4 / 26
Diagrama de flujo

Figura: Smbolos para crear diagramas de flujo

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 5 / 26
Contenido
1 Algoritmos
2 Elementos del Lenguaje de programacin
3 Programacin modular
4 Programacin estructurada
Estructuras de decisin
Estructuras iterativas
5 Matrices
6 Grficos
Tipos de datos

Tabla: Tipos de datos bsicos en PyThon 3.x

Descripcin Tipo Ejemplo


Entero int 3
De punto flotante float 10.25
Complejos complex 4 ` 3j
Cadenas de texto str "Hola mundo"
Valores booleanos bool True (cierto), False (Falso)
Listas list [1,3,4,"hola mundo"]
Tuplas tuple (1,3,4,"hola mundo")
Diccionarios set {lluvia : Arco iris , Noche : Luna }

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 7 / 26
Operadores aritmticos

Tabla: Operadores aritmticos en PyThon 3.x

Operacin Operador Aridad Asociatividad


Exponenciacin ** Binario Por la derecha
Identidad + Unario
Cambio de signo - Unario
Multiplicacin * Binario Por la izquierda
Divisin / Binario Por la izquierda
Divisin entera // Binario Por la izquierda
Mdulo o resto) % Binario Por la izquierda
Suma + Binario Por la izquierda
Resta - Binario Por la izquierda

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 8 / 26
Operadores relacionales

Tabla: Operadores relacionales en PyThon 3.x

Operacin Operador Aridad Asociatividad


Igual que == Binario
Distinto de != Binario
Menor que < Binario
Menor o igual que <= Binario
Mayor que > Binario
Mayor o igual que >= Binario

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 9 / 26
Operadores lgicos

Tabla: Operadores lgicos en PyThon 3.x

Operacin Operador Aridad Asociatividad


Negacin not Uniario
Conjuncin and Binario Por la izquierda
Disyuncin or Binario Por la izquierda

Tabla: Tabla de valores de verdad

X Y not(X) not(Y) X and Y X or Y


V V F F V V
V F F V F V
F V V F F V
F F V V F F

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 10 / 26
Operador de asignacin y variables

En PyThon (al igual que otros muchos lenguajes de programacin), el


operador de asignacin es:


Asignar a una variable un tipo de dato admitido:

A 12.56
B t1, 2, Holau

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 11 / 26
Palabras reservadas

Palabras reservadas en Python 3.x


and, as, assert, break, class, continue, def, del, elif, else, except, finally, for,
from, global, if, import, in, is, lambda, nonlocal, not, or, pass, raise, return,
try, while, with, yield

Nota!
Las palabras reservadas no deben utilizarse como nombre de variables,
funciones, clases, . . .
Para su uso es necesario tener en cuenta su sintaxis.
Qu hace cada palabra reservada? (semntica).
...
...

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 12 / 26
Contenido
1 Algoritmos
2 Elementos del Lenguaje de programacin
3 Programacin modular
4 Programacin estructurada
Estructuras de decisin
Estructuras iterativas
5 Matrices
6 Grficos
Funciones creados por el usuario en Python

1 def MyFunction(x,y,z):
2 # Sintaxis de una funcin general en Python 3.x
3 accion1
4 accion2
5 accion3
6 ...
7 accionn
8 return (variable)

Listing 1: Sintaxis para crear funciones en Python

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 14 / 26
Funciones creados por el usuario en Python

Donde:
def variable reservada, indica creacin de una funcin.
MyFunction nombre de la funcin, debe cumplir las reglas del nombre
de una variable.
(x,y,z) datos de ingreso requeridas por la funcin, todos los datos
necesarios separados por comas, si la funcin no requiere datos, es
necesario especificar parntesis.
: los dos puntos, es necesario por su sintaxis.
Accione1, AccinN acciones asignadas a la funcin.
return variable reservada que especifica la variable de retorno de la
funcin.

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 15 / 26
Contenido
1 Algoritmos
2 Elementos del Lenguaje de programacin
3 Programacin modular
4 Programacin estructurada
Estructuras de decisin
Estructuras iterativas
5 Matrices
6 Grficos
Estructura selectiva o alternativa

Sintaxis estructura de decisin simple

1 # flujo del programa antes de la estructura de decisin.


2 if (condicin):
3 # Nota: estas acciones solamente se ejecutan cuando la
condicin es verdadero.
4 Accin 01
5 Accin 02
6 ...
7 Accin n
8 # flujo del programa despus de la estructura de decisin.
9 # ...
10 # ...

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 17 / 26
Estructura selectiva o alternativa

Sintaxis estructura de decisin doble

1 # flujo del programa antes de la estructura de decisin.


2 if (condicin):
3 # Nota: estas acciones se ejecutan cuando la condicin
es verdadero.
4 ProcesoA 1
5 ...
6 ProcesoA N
7 else:
8 # Nota: estas acciones se ejecutan cuando la condicin
es falso.
9 ProcesosB 1
10 procesosB N
11 # flujo del programa despus de la estructura de decisin.

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 18 / 26
Estructura selectiva o alternativa
Sintaxis estructura de decisin mltiple

1 # flujo del programa antes de la estructura de decisin.


2 if (condicin1):
3 # Procesos Condicion 1
4 elif (condicin2):
5 # Procesos Condicin 2
6 elif (condicin3):
7 # Procesos Condicin 3
8 #...
9 elif (CondicinN):
10 # Procesos condicin N
11 else:
12 # Proceso cuando ninguna condicin anterior es
verdadero
13 # flujo del programa despus de la estructura de decisin.
UNSCH, Ingeniera Civil (Universidad Nacional
Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 19 / 26
Estructuras iterativas

Estructura iterativa for ... in

1 secuencia = range(1,10,2)
2 for elemento in secuencia:
3 Proceso 1
4 ...
5 Proceso n

Se utiliza cuando se conoce con exactitud el nmero de veces que se


repetir el proceso.
for inicia la estructura repetitiva, elemento toma cada componente
de secuencia para cada iteracin.
El proceso repite tantas veces como componentes tenga secuencia.
se utiliza frecuentemente range([start], stop[, step]) para generar la
secuencia.
UNSCH, Ingeniera Civil (Universidad Nacional
Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 20 / 26
Estructuras iterativas

Estructura iterativa while

1 # cdigos anteriores
2 while (condicin):
3 Proceso 1
4 ...
5 Proceso n

Se utiliza cuando no conoce con exactitud el nmero de veces que se


repetir el proceso, pero se dispone de una condicin para finalizar.
while inicia el proceso iterativo, para su ejecucin requiere una variable
booleana.
El proceso repite tantas veces mientras la condicin sea evaluada a
verdadero (True).

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 21 / 26
Ecuaciones que aproximan Pi

b
a? ? a ?
2 2 2` 2 2` 2` 2
... (1)
2 2 2
8
1 4 2 1 1
(2)
k0
16k 8k ` 1 8k ` 4 8k ` 5 8k ` 6
8
p1qn
(3)
4 n0 2n ` 1
8
p2qn pn!q2
(4)
2 n0 p2n ` 1q!

2 1 1 1 1 1
2 ` 2 ` 2 ` 2 ` 2 ` ... (5)
6 1 2 3 4 5

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 22 / 26
Contenido
1 Algoritmos
2 Elementos del Lenguaje de programacin
3 Programacin modular
4 Programacin estructurada
Estructuras de decisin
Estructuras iterativas
5 Matrices
6 Grficos
Matrices

1 # Importar librera
2 import numpy as np
3 # Crear matrices
4 m=4; n=3; p=6
5 C = np.zeros([m,p])
6 D = np.identity(m)
7 X = np.random.randint(-1000,1000,(m,n))
8 Y = np.random.randint(-500,500,(m,n))
9 # Obtener el elemento de la primera fila y priemra columna
10 a = X[0,0]
11 # Modificar un elemento de una matriz
12 X[1,2]=200.56
13 # Nmero de filas y columnas de una amtriz
14 a=np.shape(X)

UNSCH, Ingeniera Civil (Universidad Nacional


Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 24 / 26
Contenido
1 Algoritmos
2 Elementos del Lenguaje de programacin
3 Programacin modular
4 Programacin estructurada
Estructuras de decisin
Estructuras iterativas
5 Matrices
6 Grficos
Grficos

1 import numpy as np
2 import matplotlib.pyplot as plt
3 import math
4 x=np.linspace(-50,50,200)
5 #y=x*math.sin(x)
6 y=x*np.sin(x)
7 plt.figure()
8 plt.plot(x, y, linewidth=1, linestyle="-", color="red",
marker="None", label="Basilea")
9 plt.legend(loc=4)
10 plt.xlabel("Nmero de Iteracion")
11 plt.ylabel("Valor de PI")
12 plt.title("Aproximacin de PI por Distintos Mtodos")
13 plt.axis("tight")
14 plt.grid(True)
15 plt.show()
UNSCH, Ingeniera Civil (Universidad Nacional
Gua de
de San
Programacin
Cristbal de
enHuamanga)
PyThon . . . 15 de octubre de 2017 26 / 26

Das könnte Ihnen auch gefallen