Informática ISesión 11: Python (2) – Estructura Secuencial
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Ejemplos
Entrada y Salida de datos
Estructura Secuencial
RepasoRepaso
A continuación…A continuación…
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia3
Computador de escritorio
Sistema operativo
Interprete / Compilador
IDEs
¿Qué se necesita para programar en Python?
¿Qué se necesita para programar en Python?
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia4
Tipos
Locales Online Portables
Entornos de desarrollo PythonEntornos de desarrollo Python
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia5
Consultar: http://www.learnpython.org/en/Variables_and_Types
http://www.tutorialspoint.com/python/python_quick_guide.htm
Variables (objetos)Variables (objetos)
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia6
Palabras reservadas: Lista de palabras propias del lenguaje que no pueden ser usadas como identificadores de variables o constantes.
and exec not
assert finally or
break for pass
class from print
continue global raise
def if return
del import try
elif in while
else is with
except lambda yield
Palabras reservadasPalabras reservadas
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
EjemploEjemplo
7
Ejercicio de repaso:El objetivo de este ejercicio es crear un string, un entero y un numero flotante. El string deberá ser llamado Mystring y contendrá la palabra “hello”, el número flotante deberá ser llamado myfloat y contendrá el numero 10, y el entero será llamado myint y deberá contener el numero 20.
Se recomienda mirar la siguiente pagina:http://www.learnpython.org/en/Variables_and_Types
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Ejemplos
Entrada y Salida de datos
Estructura Secuencial
Repaso
Estructura Secuencial
A continuación…A continuación…
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
La estructura de control secuencial es la más sencilla y es inherente al Software. También se conoce como estructura lineal.
Se compone de instrucciones que deben ejecutarse en forma consecutiva, una tras otra, siguiendo UNA Y SOLO UNA línea de flujo.
Problemas muy sencillos pueden resolverse haciendo uso únicamente de esta estructura.
Estructura SecuencialEstructura Secuencial
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Una estructura de control secuencial puede contener cualquiera de las siguientes instrucciones:
• Asignación de valores• Entrada de datos• Procesamiento de datos (operaciones)• Reporte de resultados
Hay que determinar el orden de ejecución de las instrucciones (posición) ya que la conmutatividad NO es una propiedad aplicable a los algoritmos.
Estructura SecuencialEstructura Secuencial
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
•Operadores y expresiones:AsignaciónAritméticosRelacionales.Lógicos.
• Cuando concurren en una misma expresión diferentes tipos de operadores se dan las reglas de prioridad y asociatividad.
Expresiones y operadoresExpresiones y operadores
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
AsignaciónAsignación
Operador de asignación (=) La variable que tomará el nuevo valor siempre debe ir a
la izquierda de la expresión.
Sintaxis:Variable = expresión
Ejemplos: • a = b*n• c = c + 1• d = d%3• e = 14
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
AritméticosAritméticos Operadores aritméticos
De dos operandos:
Operación Operador Ejemplo Resultado
Potenciación ** 3**2 9
Multiplicación * 2*34 68
División / 21/2 10.5
División entera // 21//2 10
Módulo % 7 % 3 1
Suma + 3+4 7
Resta - 5-2 3
Asignación = X=3 -
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
En una instrucción los operadores se ejecutan en un orden Predeterminado.
1. Paréntesis (se ejecutan primero los más internos)2. Signo 3. Potencia4. Productos y Divisiones ( *, / y %)5. Sumas y Restas (+ y -)6. …
AritméticosAritméticos
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
De asignación aritmética: Es una abreviatura de las expresiones de
asignación:
OPERACIÓN OPERADOR EJEMPLO SIGNIFICADO
Suma += c += 7 c = c + 7
Resta -= d -= 4 d = d – 4
Multiplicación *= e *= 5 e = e * 5
División /= f /= 3 f = f / 3
Módulo %= g %=9 g = g % 9
Potenciación **= h **= 2 h = h**2
Incrementales y DecrementalesIncrementales y Decrementales
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
RelacionalesRelacionales
Operadores Relacionales Sintaxis:
operador_1 operador_relacional operador_2
OPERACIÓN OPERADOR EJEMPLO SIGNIFICADO
Igualdad == x == y ¿x es igual a y?
Diferente != x != y ¿x no es igual a y?
Mayor > x < y ¿x es mayor que y?
Menor < x > y ¿x es menor que y?
Mayor Igual >= x <= y ¿x es mayor o igual que y?
menor Igual <= x >= y ¿x es menor o igual que y?
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
RelacionalesRelacionales Nota: Es importante que se diferenciemos el
operador de asignación y el operador de igualdad (relacional)
Asignación = Este operador le lleva el valor correspondiente a la
variable que se encuentre a la izquierda• X= 3 // a X le asigna el valor de 3.
Igualdad == Este operador pregunta si los operadores de la
izquierda y de la derecha son iguales. Si son iguales resulta 1. Si son diferentes resulta 0.• X==3 //¿X es igual a 3?
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
LógicosLógicos
Operadores Lógicos
OPERACIÓN OPERADOR EJEMPLO SIGNIFICADO
Negación not not(m) No m (inverso de m)
Y and m>3 and m<5 m mayor a 3 y menor que 5
O or m>3 or m<5 m mayor a 3 o menor que 5
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Ejemplos
Entrada y Salida de datos
Estructura Secuencial
Repaso
Entrada y Salida de datos
A continuación…A continuación…
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Salida/Ingreso de informaciónSalida/Ingreso de información
20
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Salida de datosSalida de datos Salida de datos:
Escribir: Para mostrar información en la pantalla en Diagramas de flujo utilizábamos:
Ahora en Python reemplazaremos dicha estructura por la función print:
El mensaje posee la siguiente sintaxis diferentes formatos de salida
Mensaje
print (“mensaje”, variables);
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Formato de salidaFormato de salida• El objetivo dar formato es hacer la salida mas agradable.• Formas vistas hasta el momento:
• Para profundizar mas puede consultar en: http://www.python-course.eu/python3_formatted_output.php
22
Empleando coma (,)
Empleando el signo mas (+)
>>> print("Articulo: %d, precio: %f" % (5, 1850.25))Articulo: 5, precio: 1850.25
Empleando tipos (%)
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Formato de salidaFormato de salida
23
• Python nos permite indicar el formato de visualizacion de una variable mediante un indicativo.
• Los formatos más utilizados son:
Formato Significado
d (i) Entero decimal
u Entero decimal sin signo
o Octatal sin signo
x Hexadecimal sin signo
f Flotante (real)
c Un solo carácter
s Cadena de caracteres
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Sobre las secuencias de escapeSobre las secuencias de escape
24
• Python cuenta con un carácter especial conocido como carácter de escape (\).
• Cuando un carácter de escape es usado en un String, el carácter siguiente es tratado de una forma diferente a la normal
• Secuencia de escape = Carácter de escape + Carácter siguiente.
Secuencia de escape
Nombre Ejemplo Salida
\n Nueva línea print('Hola \n Mundo') Hola Mundo
\t Tabulación horizontal print('3\t4\t5') 3 4 5
\\ Carácter backslash print('\\') \
\‘ Carácter comilla sencilla print('don\'t') don't
\“ Carácter comilla doble print("He says, \"hi\".") He says, "hi".
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Formato separación empleando comas: Permite mostrar en pantalla un texto (cadena), y variables.
El mensaje posee la siguiente sintaxis:“texto1”,variable1,“texto2 ”, variable2,“texto3 ”,formato3,…
• Mensaje: Contiene el texto que deseamos imprimir en pantalla y las variables separadas con comas. El texto siempre va entre comillas (simple o dobles).
– Texto: Es la cadena de palabras que aparecen de manera literal.– variable: Son los nombres de las Variables que ver su valor.
Salida de datos recomendadaSalida de datos recomendada
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Entrada de datosEntrada de datos Entrada y salida de datos:
Leer: Para la entrada de datos por parte del usuario.
Ahora en Python reemplazaremos dicha estructura por la función input.
Variables
vble = tipo(input(“mensaje”))
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Descripción: Permite ingresar los datos mediante el teclado. Sintaxis:
• vble: es la variable que se le asignará un valor por teclado.• tipo: se debe indicar el tipo de dato que deseamos recibir:
– int: entero– float: real– bool: booleano– Sin tipo: cadena
• Mensaje: El mensaje es opcional, y es el texto que se mostraría antes de ingresar la variable.
vble = tipo(input(“mensaje”))
Entrada de datosEntrada de datos
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
EjemploEjemplo
Para capturar datos que el usuario quiera ingresar al programa…
28
name = input('Ingrese su nombre:') print('¡Buenos dias',name,'!')
print('Ingrese su edad:')age = int(input())print('su edad es:', age)print('El proximo año sera:', age+1)
print('Ingrese su promedio:')promedio = float(input())print('su pormedio es:', promedio)
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
Ejemplos
Entrada y Salida de datos
Estructura Secuencial
Repaso
Ejemplos
A continuación…A continuación…
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
EjemplosEjemplos Ejemplo 1: Hacer un algoritmo que calcule el área de un cuadrado
30
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
EjemplosEjemplos Ejemplo 2: Hacer un algoritmo que calcule el área de un cuadrado
31
2009/1Circuitos Digitales III 2010/1Circuitos Digitales III 2010/1Circuitos Digitales IIICircuitos Digitales III 2010/1Informática I Universidad de Antioquia
GRACIAS POR SU ATENCIÓN
Top Related