Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% encontró este documento útil (0 votos)
141 vistas15 páginas

Apuntes Python

Descargar como pdf o txt
Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1/ 15

Apuntes de Laboratorio de Informtica

Versin 1.0 Abril 01, 2016.

Pia Mara
pinagmg@gmail.com
Socorro Kenia
keniavs@correo.unefm.edu.ve
Pineda Francis
fpineda85@gmail.com
Departamento de Fsica y Matemtica
Universidad Nacional Experimental Francisco de Miranda
NDICE GENERAL

1 L ENGUAJES DE P ROGRAMACIN PGINA 3


1.1 Programacin Estructurada 3
1.2 Lenguajes de Programacin 3
1.3 Proceso de Traduccin de un Programa 3
1.3.1 Intrpretes 4
1.3.2 Compiladores 4
1.4 Python 4
1.4.1 Elementos del Lenguaje 5
1.4.2 Variables 5
1.4.3 Constantes 6
1.4.4 Tipos de Datos 7
1.4.5 Operadores Aritmticos 8

2 E STRUCTURAS DE C ONTROL PGINA 9


2.1 Estructuras Secuenciales 9

3 REFERENCIAS PGINA 11
Referencias 12
Referencias 12

A SOLUCIONES A LOS EJERCICIOS PGINA 13


Soluciones del Captulo 1 13
1 Lenguajes de Programacin

1.1 Programacin Estructurada

Es un conjunto de tcnicas para desarrollar algoritmos fciles de escribir, verificar, leer y modificar. La Programacin estruc-
turada utiliza:

Diseo Descendente (Diseo de algoritmos en etapas)

Recursos Abstractos (Descomposicion de una accin compleja en partes resultantes)

Estructuras Bsicas (Estructuras de control secuencial, selectivas e iterativas)

1.2 Lenguajes de Programacin

Cuando los algoritmos se han de expresar en un formato que sea entendido por la computadora, hablamos de programa,
ya que el pseudocdigo o el diagrama de flujo no son comprensibles por la computadora, aunque pueda entenderlos cual-
quier programador. Un programa se escribe en un lenguaje de programacin y las operaciones que conducen a expresar
un algoritmo en forma de programa se llaman programacin. As pues, los lenguajes utilizados para escribir programas de
computadoras son los lenguajes de programacin y programadores son los escritores y diseadores de programas. El proceso
de traducir un algoritmo en pseudocdigo a un lenguaje de programacin se denomina codificacin, y el algoritmo escrito
en un lenguaje de programacin se denomina cdigo fuente.
En la realidad la computadora no entiende directamente los lenguajes de programacin sino que se requiere un programa
que traduzca el cdigo fuente a otro lenguaje que s entiende la mquina directamente, pero muy complejo para las personas;
este lenguaje se conoce como lenguaje mquina y el cdigo correspondiente cdigo mquina. Los programas que traducen
el cdigo fuente escrito en un lenguaje de programacin tal como python a cdigo mquina se denominan traductores.

1.3 Proceso de Traduccin de un Programa

El proceso de traduccin de un programa fuente escrito en un lenguaje de alto nivel a un lenguaje mquina comprensible
por la computadora, se realiza mediante programas llamados traductores. Los traductores de lenguaje son programas que
4 Lenguajes de Programacin

traducen a su vez los programas fuente escritos en lenguajes de alto nivel a cdigo mquina. Los traductores se dividen en
compiladores e interpretes.

1.3.1. Intrpretes
Un intrprete es un traductor que toma un programa fuente, lo traduce y, a continuacin, lo ejecuta. Los programas intr-
pretes clsicos como BASIC, prcticamente ya no se utilizan, ms que en circunstancias especiales. Sin embargo, est muy
extendida la versin interpretada del lenguaje Smalltalk, un lenguaje orientado a objetos puro. El sistema de traduccin con-
siste en: traducir la primera sentencia del programa a lenguaje mquina, se detiene la traduccin, se ejecuta la sentencia; a
continuacin, se traduce la siguiente sentencia, se detiene la traduccin, se ejecuta la sentencia y as sucesivamente hasta
terminar el programa.
Los lenguajes de programacin de alto nivel se traducen automticamente a cdigo de mquina, pero hay dos tipos dife-
rentes de traductores dependiendo de su modo de funcionamiento: compiladores e intrpretes. Un compilador lee com-
pletamente un programa en un lenguaje de alto nivel y lo traduce en su integridad a un programa de cdigo de mquina
equivalente. El programa de cdigo de mquina resultante se puede ejecutar cuantas veces se desee, sin necesidad de volver
a traducir el programa original. Un intrprete acta de un modo distinto: lee un programa escrito en un lenguaje de alto nivel
instruccin a instruccin y, para cada una de ellas, efecta una traduccin a las instrucciones de cdigo de mquina equiva-
lentes y las ejecuta inmediatamente. No hay un proceso de traduccin separado por completo del de ejecucin. Cada vez que
ejecutamos el programa con un intrprete, se repite el proceso de traduccin y ejecucin, ya que ambos son simultneos.

1.3.2. Compiladores
Un compilador es un programa que traduce los programas fuente escritos en lenguaje de alto nivel a lenguaje mquina.
La traduccin del programa completo se realiza en una sola operacin denominada compilacin del programa; es decir, se
traducen todas las instrucciones del programa en un solo bloque. El programa compilado y depurado (eliminados los errores
del cdigo fuente) se denomina programa ejecutable porque ya se puede ejecutar directamente y cuantas veces se desee;
slo deber volver a compilarse de nuevo en el caso de que se modifique alguna instruccin del programa. De este modo el
programa ejecutable no necesita del compilador para su ejecucin. Los lenguajes compiladores tpicos ms utilizados son:
C, C++, Java, C, Pascal, FORTRAN y COBOL.

1.4 Python

Python es un lenguaje de programacin moderno creado por Guido van Rossum a inicios de los aos noventa. La implemen-
tacin cannica, conocida como CPython, est bajo una licencia de software libre y se puede descargar del sitio oficial [26]. El
que sea una tecnologa abierta y libre tiene ventajas importantes sobre tecnologas propietarias. La principal es que se puede
usar sin tener que cubrir costos de licencias. Esto quiere decir que un alumno puede seguir usando Python gratuitamente
fuera del Tecnologico de Monterrey, por ejemplo para escribir software en un entorno comercial, o para continuar con sus
estudios de posgrado en alguna otra universidad.

Existen muchos otros lenguajes de programacin, por qu aprender Python? Python presenta una serie de ventajas que lo
hacen muy atractivo, tanto para su uso profesional como para el aprendizaje de la programacin. Entre las ms interesantes
desde el punto de vista didctico tenemos:

Python es un lenguaje muy expresivo, es decir, los programas Python son muy compactos: un programa Python sue-
le ser bastante ms corto que su equivalente en lenguajes como C. (Python llega a ser considerado por muchos un
lenguaje de programacin de muy alto nivel.)
Lenguajes de Programacin 5

Python es muy legible. La sintaxis de Python es muy elegante y permite la escritura de programas cuya lectura resulta
ms fcil que si utilizramos otros lenguajes de programacin.

Python ofrece un entorno interactivo que facilita la realizacin de pruebas y ayuda a despejar dudas acerca de ciertas
caractersticas del lenguaje. El entorno de ejecucin de Python detecta muchos de los errores de programacin que
escapan al control de los compiladores y proporciona informacin muy rica para detectarlos y corregirlos.

Python puede usarse como lenguaje imperativo procedimental o como lenguaje orientado a objetos. Posee un rico
juego de estructuras de datos que se pueden manipular de modo sencillo. Estas caractersticas hacen que sea relativa-
mente fcil traducir mtodos de clculo a programas Python.

Python ha sido diseado por Guido van Rossum y est en un proceso de continuo desarrollo por una gran comunidad de
desarrolladores. Aproximadamente cada seis meses se hace pblica una nueva versin de Python. Tranquilo! No es que cada
medio ao se cambie radicalmente el lenguaje de programacin, sino que ste se enriquece manteniendo en lo posible la
compatibilidad con los programas escritos para versiones anteriores. Una ventaja fundamental de Python es la gratuidad
de su intrprete. Puedes descargar el intrprete de la pgina web http://www.python.org. El intperprete de Python tiene
versiones para prcticamente cualquier plataforma en uso: sistemas PC bajo Linux, sistemas PC bajo Microsoft Windows,
sistemas Macintosh de Apple, etc. Para que te vayas haciendo a la idea de qu aspecto presenta un programa completo en
Python, te presentamos uno que calcula la media de tres nmeros que introduce por teclado el usuario y muestra el resultado
por pantalla:

Algoritmo 1 Promediar notas


a = float(Raw_input Dame un nmero)
b = float(Raw_input Dame otro nmero)
c = float(Raw_input y ahora, uno ms)
med i a = (a + b + c)/3
Print La media es, media

1.4.1. Elementos del Lenguaje


Como en la mayora de los lenguajes de programacin de alto nivel, en Python se compone de una serie de elementos que
alimentan su estructura. Entre ellos, podremos encontrar los siguientes:

1.4.2. Variables

Definicin 1.1

Una variable es un espacio para almacenar datos modificables, en la memoria de un ordenador. En Python, una va-
riable se define con la sintaxis:
nombred e l a v ar i abl e = v al or d e l a v ar i abl e

Cada variable, tiene un nombre y un valor, el cual define a la vez, el tipo de datos de la variable. Existe un tipo de variable,
denominada constante, la cual se utiliza para definir valores fijos, que no requieran ser modificados.

Para las variables se recomienda utilizar nombres descriptivos y en minsculas. Para nombres compuestos, separar las pala-
bras por guiones bajos. Antes y despus del signo =, debe haber uno (y solo un) espacio en blanco.
6 Lenguajes de Programacin

Ejemplo 1.1

Correcto
mivariable = 12

Incorrectos
MiVariable = 12
mivariable = 12
mivariable=12
mivariable = 12

1.4.3. Constantes
Para las constantes es recomendable utilizar nombres descriptivos y en maysculas separando palabras por guiones bajos.

Definicin 1.2

En programacin, una constante es un valor que no puede ser alterado/modificado durante la ejecucin de un progra-
ma, nicamente puede ser ledo. Una constante corresponde a una longitud fija de un rea reservada en la memoria
principal del ordenador, donde el programa almacena valores fijos.

Ejemplo 1.2

MIC ON ST AN T E = 12

Para imprimir un valor en pantalla, en Python, se utiliza la palabra clave print:

Definicin 1.3

miv ar i abl e = 15
pr i nt mi v ar i abl e

Lo anterior, imprimir el valor de la variable miv ar i abl eenpant al l a.

1.4.4. Tipos de Datos


Una variable (o constante) puede contener valores de diversos tipos. Entre ellos:

Cadena de texto (string)

Entero (integer)

Real (float)

Booleano (v o f)

Cadena de texto (string):


Lenguajes de Programacin 7

Ejemplo 1.3

mic ad ena = "Hol aMund o!"

mic ad ena m ul t i l i nea = """


E st aesunac ad ena
d ev ar i asl i neas
"""

Nmero entero:

Ejemplo 1.4

edad = 35

Nmero real:

Ejemplo 1.5

precio = 7435.28

Booleano (verdadero / Falso):

Ejemplo 1.6

verdadero = True
falso = False

1.4.5. Operadores Aritmticos


Entre los operadores aritmticos que Python utiliza, podemos encontrar los siguientes:

si mbol o si g ni f i c ad o e j empl o r esul t ad o


+ suma a = 10 + 5 a es 15
r est a a = 12 + 7 a es 5
mul t i pl i c aci n a = 75 a es 35
exponenci aci n a = 2 3 a es 8
/ d i vi si n a = 12,5/2 a es 6.25
// d i vi si nent er a a = 12,5//2 a es 6

Tabla 1.1: Operadores Aritmticos

Siempre es recomendable colocar un espacio en blanco, antes y despus de un operador.


8 Lenguajes de Programacin

Ejemplo 1.7

montob r ut o = 175
t asa i nt er es = 12
mont o i nt er es = mont o b r ut o t asa i nt er es/100
t asa b oni f i c aci on = 5
i mpor t e b oni f i c aci on = mont o b r ut o t asa b oni f i c aci on/100
mont o n et o = (mont o b r ut o i mpor t e b oni f i c aci on) + mont o i nt er es
2 Estructuras de Control

Una estructura de control, es un bloque de cdigo que permite agrupar instrucciones de manera controlada. En este captulo,
hablaremos sobre las estructuras de control secuencial:

2.1 Estructuras Secuenciales

Una estructura de control secuencial puede contener cualquiera de las siguientes instrucciones: declaracin variables asig-
nacin de valores entrada de datos procesamiento de datos (operaciones) reporte de resultados

Ejemplo 2.1

Se desea implementar un programa en python para obtener la suma de dos nmeros cualesquiera. Se debe partir
de que para poder obtener la suma es necesario contar con dos nmeros, pues el proceso que debemos realizar es
precisamente la suma de stos, la cual se asigna a una variable que se reporta como resultado del proceso.

Los pasos por seguir son los mostrados en el programa 1, que permite determinar la suma de dos nmeros cualesquiera.

Algoritmo 2 Sumar dos nmeros


a = float(Raw_input Diga valor de a)
b = float(Raw_input Diga valor de b)
s a +b
Print la suma es:,s

Como se puede ver, a y b representan los valores para sumar, y s el resultado de la suma. Al representar la solucin del proble-
ma utilizando pseudocdigo, se est utilizando un lenguaje que comnmente utilizamos, slo que de una forma ordenada y
precisa.

Ejemplo 2.2

Un estudiante realiza cuatro exmenes durante el semestre, los cuales tienen la misma ponderacin. Realice el pseu-
docdigo que representen el algoritmo correspondiente para obtener el promedio de las calificaciones obtenidas.
10 Estructuras de Control

Algoritmo 3 Promediar notas


n1 = float(Raw_input Valor de la nota uno)
n2 = float(Raw_input Valor de la nota dos)
n3 = float(Raw_input Valor de la nota tres)
n4 = float(Raw_input Valor de la nota cuatro)
s n1 + n2 + n3 + n4
p s/4
Print el promedio de notas es:, p

Para explicar este proceso, primeramente se parte de que para poder obtener un promedio de calificaciones es necesario
conocer estas calificaciones, las cuales las tenemos que leer de alguna parte (n1, n2, n3, n4); posteriormente, se tienen que
sumar para saber el total de calificaciones obtenidas (S), y con base en el nmero de calificaciones proporcionadas (4), poder
calcular el promedio obtenido (P) y presentar el resultado obtenido, ste de manera escrita.

Ejemplo 2.3

Un estudiante realiza cuatro exmenes durante el semestre, los cuales tienen la misma ponderacin. Realice el pseu-
docdigo que representen el algoritmo correspondiente para obtener el promedio de las calificaciones obtenidas.

Algoritmo 4 rea de una circunferencia


r = float(Raw_input Ingrese valor del radio)
P I = 3,1415
ar ea pi r
Print el area es:, area

Ejercicios

Resolver los siguientes problemas

2.1 Realice un pseudocdigo que representen el algorit- 2.4 Un estacionamiento requiere determinar el cobro
mo para obtener el rea de un tringulo. que debe aplicar a las personas que lo utilizan. Conside-
re que el cobro es con base en las horas que lo disponen
2.2 Una empresa importadora desea determinar cun-
y que las fracciones de hora se toman como completas y
tos dlares puede adquirir con equis cantidad de dine-
realice un diagrama de flujo y pseudocdigo que repre-
ro mexicano. Realice un pseudocdigo que representen
senten el algoritmo que permita determinar el cobro.
el algoritmo para tal fin.

2.3 Una empresa que contrata personal requiere deter- 2.5 Pinturas La brocha gorda requiere determinar cun-
minar la edad de las personas que solicitan trabajo, pero to cobrar por trabajos de pintura. Considere que se cobra
cuando se les realiza la entrevista slo se les pregunta el por m2 y realice un diagrama de flujo y pseudocdigo que
ao en que nacieron. Realice el pseudocdigo que repre- representen el algoritmo que le permita ir generando pre-
senten el algoritmo para solucionar este problema. supuestos para cada cliente.
3 REFERENCIAS

(Briones, 1996)
(Lpez, 2007-2009)
12 Referencias

Referencias

Briones, G. (1996). Metodologa de la investigacin cuantitativa en las ciencias sociales. Bogot, Colombia: Instituto colom-
biano para el fomento de la educacin superior, icfes.
Lpez, J. (2007-2009). Algoritmos y programacin, guia para docentes. ISLAS, segunda edicin(96), 125-135. Descargado de
www.eduteka.org/pdfdir/AlgoritmosProgramacion.pdf
A SOLUCIONES A LOS EJERCICIOS

Soluciones del Captulo 1

También podría gustarte