PROGRAMACION I
Final Obligatorio. 1er parcial: 20/09. 2do parcial: 15/11. (en computadora, uade labs). Se
puede rendir el final sólamente en la primer (29/11) o segunda fecha de parcial(20/12). 2
fechas para recuperar parciales.
Se pueden tener hasta 4 ½ faltas.
Primera hora: L2. Segunda hora: Lab 503.
Guía de trabajos prácticos – P1 >> descargar: guía de trabajos prácticos 180526 (es la de
Python).
Lenguaje Python Versión 3 (3.x.y) (descargar cualquiera de éstas: )
Python oficial de Python.org
Anaconda Python
WinPython
Python(x,y)
ActivePython
Pydroid 3 (Android)
09/08
Pyton es un lenguaje de alto nivel, de propósito general. (lejos del hardware, más cerca de las
personas, ej C es de nivel medio (un poco más cerca de la máquina, menos amigable).
La info del lenguaje de alto nivel debe traducirse a lenguaje de máquina. Se puede compilar o
interpretar.
Vamos a escribir en un lenguaje de alto nivel en un programa FUENTE, que será traducido por
el programa COMPILADOR. Lo convierte a un programa objeto, contiene el código del
programa fuente traducido a lenguaje de máquina, solo falta el proceso de enlazado o
vinculación. Lo une con módulos de código (otorgado por el creador), creando un programa
ejecutable. Se compila una vez, y se permite ejecutar indefinidamente.
En caso del INTERPTRETE, toma la primera línea, la traduce y ejecuta inmediatamente. Luego
pasa a la segunda, traduce y ejecuta, etc. No hay problema OBJETO ni EJECUTABLE. Sólo
tenemos el PROGRAMA FUENTE.
Los programas que se compilan suelen ser más rápidos, y suelen tener mayor cantidad de
requisitos sintácticos.
PYTHON es un programa multiparadigma.
Cada lenguaje adopta uno o más paradigmas, o estilos de programación. PYTHON Soporta
programación imperativa, orientada a objetos y parcialmente la programación funcional.
P privilegia la legibilidad del código. P es portable, puede cambiar de soporte hard.
P es sensible a MAYUSCULAS y minúsculas.
P es de estructura libre. No tiene llaves ni “,”. Las instrucciones terminan con un enter, cada
instrucción cabe en una línea.
Los comentarios comienzan con “#”.
FUNCION PRINT: (mostrar en pantalla): print(“Hola mundo”)
Print(“hola mundo” end=” “) #end separa las lineas por
un espacio en vez de por un salto de línea.
Variable: define un espacio de almacenamiento en memoria capaz de contener un valor. Se
pisa y cambia (el anterior se destruye). Las variables no se declaran ya que al ingresarles su
valor, se declaran automáticamente según lo ingresado, estableciendo su tipo de dato
automáticamente.
Nombres de variables: (letras, números y _ _) (no pueden comenzar con un número)
(no pueden coincidir con las palabras reservadas del lenguaje).
Los caracteres se consideran cadenas de longitud 1.
Hay valores booleanos: True y False.
Se permite la asignación múltiple: a,b,c = “lunes”, 5. 18
Para imprimir variables: dia = 5
Print(“hola”, dia)
Especificadores de conversión:
a=5
print(a) >> 5
o Print(“%4d” %a) >> _ _ _ 5 #4 es el ancho
o Pi=3.1416
Print(“%5.2f” %pi) >>_3.14 #5 es el ancho, 2 la cantidad de decimales
o Los especificadores %d números enteros. %f números reales.
o No hace falta repetir el %: print(“X = %4d – buscar en slic
Ingresar valores por teclado: a=input(“mensaje”) #siempre devuelve una cadena de
caracteres.
o N=int(input(“mensaje”))
o R=float(int(“mensaje”))
OPERADORES ARITMETICOS:
o + suma
o – resta
o * multiplicación
o //división entera
o / división real
o ** potenciación
o % módulo (el resto de una división)
Orden de evaluación:
o Potenciación
o Menos unario
o Multiplicación, divi, módulo
o Sumas y restas
o O sea: -2**2 -4
Operadores de asignación adicional
o += a= a +1
o -=
o /=
o //=
o **=
o %+
o NO HAY ++ ni - -.
ESTRUCTURAS DE CONTROL:
o Cualquier programa se ejecuta de manera vertical descendente:
o O estructura alternativa o condicional. (if)
o If (condición):
…….(el bloque ejecuta estas líneas si la condición es verdadera)
…….
Else: (el bloque ejecuta estas líneas si la condición es falsa)
…….
…….
o O puede ser un ELIF
o If (condición):
…….(el bloque ejecuta estas líneas si la condición es verdadera)
…….
Else: (el bloque ejecuta estas líneas si la condición es falsa)
…….
…….
Elif:
……
ESTRUCTURA ALTERNATIVA:
o Las condiciones y else van seguidas de dos puntos:
o La sangría establece el alcance de if
o Python recomienda una sangria de 4 tabulaciones
o La sangría debe ser uniforme.
OPERADORES RELACIONALES.
==
>
<
>=
<=
!=
OPERADORES LOGICOS:
And
Or
Not
Condiciones encadenadas:
If a<b>c:
Equivale a
If a<b and b>c:
OPERADOR CONDICIONAL:
<var> = <valor1> if < Condicion> else <valor2>
Ejemplo: a= b if b>=0 else -b
SELECCION MULTIPLE:
NO existe en python. Se usa ELIF.
INSTRUCCIÓN ITERATIVA:
While <condición>:
…..
……
INSTRUCCIÓN BREAK:
La terminación normal de un while es cuando la condición se convierte en falsa. El break
rompe el ciclo al cumplir cierta condición.
CLAUSULA ELSE:
El else se puede escribir dentro de un while. Se utiliza luego de un IF (BREAK). Se ejecuta sólo
cuando el while completa su ciclo y su condición se convierte en falsa, si el ciclo se corta con el
break, el else no se ejecuta.
INSTRUCCIÓN CONTINUE: interrumpe e bloque del while y vuelve a la condición.
X=-6
While x<5:
X=x+1
If x==0:
continue
Print (“%2d: %5.2f” %(x,1/x))
INSTRUCCIÓN FOR:
For <variable> in <secuencia>:
……..
……..
FUNCION RANGE:
Genera secuencia de números enteros
Admite tres formas de usarlo:
a. Genera una secuencia de números entre 0 y <vfinal>. Intervalo
semiabiertos, es decir, no contempla al vfinal. Ej range(10) va del 0 al 9.
b. Range (vinicial, vfinal) ej. Range(5,10) va del 5 al 9.
c. Range (vinicial, vfinal, inc)
i. Inc es el incremento.
Ejemplo for range(): imprimir numeros impares entre 1 y n
N=int(input(“ingresar”))
For i in range (1,n+1,2):
Print (I, end=” “)
Print ()
Escribir un prog he contado 35 cabezas y 94 patas de gallinas y conejos. Cuantos conejos y
cuantas gallinas tengo. Sugerencia verificar todas las combinaciones posibles hasta hallar la
correcta.
Cab=35
Pat=94
G=0
C=0
pg=2
pc=4
While g+c=35:
While cab > 0:
If cab%pc==0
C+=1
RESUELTO EN PIZARRION:
Cab=35
Pat=94
C=0
While(c<=35):
C+=1
G=cab-c
If ((f+c)+(2+g))==94:
Print(c,g)