Sie sind auf Seite 1von 6

1er

Introduccin a la Programacin

semestre de 2016

Introduccin a la Programacin

Prctica 1  Introduccin
Versin del 16 de febrero de 2016
Se
sos

recuerda
de

la

que

tanto

materia,

se

esta

prctica

encuentran

como

las

disponibles

siguientes,
para

descargar

los

dems

en

la

recur-

direccin

http://moodle.ungs.edu.ar/moodle/course/category.php?id=40 en la materia Introduccin a


la Programacin en la comisin correspondiente.

La matemtica y la computacin
En este captulo vamos a trabajar con dos mundos que estn muy relacionados: el de la matemtica
y el de la computacin, empezando con el primero que nos es mucho ms conocido.

Nmeros, frmulas y resultados


La base de la matemtica son los nmeros. Si uno escribe

0
cualquiera puede entender que nos referimos al cero. Lo mismo pasa con 1, 20 45. Pero, qu pasa
si escribimos

1 + 1?

Simple, todos sabemos que uno mas uno es dos. Lo interesante ac es que hemos

logrado expresar al dos sin escribir 2 en ninguna parte. Lo hicimos a partir de una frmula, calculando
cuanto daba la suma de 1 ms 1. Decimos que el ms es un operador, el de la suma, pero hay otros: el
operador resta (-), el de multiplicacin(*) y el de divisin(/) son ejemplos clsicos. Veamos otra frmula:

2+34
Esta vez, tenemos que recordar que la multiplicacin tiene prioridad sobre la suma, por lo que se
resuelve primero. Es decir, lo anterior es equivalente a

2 + (3 4)
lo cual a su vez equivale a

2 + 12,

ya que

34

es

12.

Luego, el resultado nal es

hemos expresado a un nmero el catorce  sin escribirlo explcitamente, sin poner

14

14.

Una vez ms,

en ningn lado. Y

hemos podido llegar a l reduciendo la frmula original, achicndola de a un paso a la vez.


Adems, en matemtica contamos con variables, que sirven para denotar nmeros que no se sabe en
principio cunto valen. Por ejemplo, si vamos a comer entre 4 amigos y llega la hora de pagar la cuenta,
sabemos que a cada uno le tocar pagar

x/4
donde

x es el precio total de la comida, no hace falta saber a priori cuanto ser el total para saber la cuenta

que hay que hacer, para cualquier comida siempre dividimos el total por 4. Ahora s, si maana vamos y
gastamos 40, haremos

40/4

y cada uno pagar

10,

o si gastamos 80 haremos

80/4

y cada uno pagar 20.

Lo til es que la frmula aplica para cualquier precio (para todo lo dems tenemos MasterCard).
Ahora, qu pasa si tampoco sabemos cuantos comensales seremos? Podemos tomar la ecuacin de
arriba y cambiar el 4 por una variable:

x/y
donde

sigue siendo el precio total e

es ahora la cantidad de comensales. Si sabemos que seremos

cuatro, como en el ejemplo original, nos queda

x/4,

como era de esperarse.

Pgina 1 de 6

1er

Introduccin a la Programacin

semestre de 2016

Expresiones y reducciones
Pasamos ahora al aspecto tcnico, as que presten mucha atencin! Diremos que una expresin es una
combinacin de nmeros y variables mediante operaciones. Ejemplos de expresiones son:

2+2

x+1

(x x) + 1

x+y4
2xy

b2 4ac
2a

Las expresiones suelen poder reducirse a otras equivalentes pero ms sencillas. Cuando no pueden
reducirse ms decimos que son irreducibles. En el ejemplo anterior, la expresin 0 representa al cero, y no

2 + 2 en cambio, se reduce a 4 y ah ya no puede reducirse ms. Decimos entonces


2 + 2 evala a 4. x + 1 en cambio no puede reducirse a un nmero ya que a priori no sabemos cuanto
vale x. (x x) + 1 por otro lado, puede reducirse a 0 + 1, luego 0 + 1 se reduce a 1. Entonces podemos
decir que (x x) + 1 evala a 1.
Existen expresiones que no evalan a nada, como por ejemplo 20/0, ya que no se puede dividir por
puede reducirse ms.

que

cero. Tambin debemos cuidarnos de las cosas que parecen expresiones pero no lo son, por estar mal
escritas, como por ejemplo:

2+ 5

2+3 +

x + 5/

Programas
Un programa no es muy distinto de una serie de expresiones matemticas escritas una atrs de la
otra, con nmeros, variables y operaciones. Al correr el programa, las lneas se han de ejecutar en orden,
una a la vez, como si las furamos poniendo en una calculadora. Dicho de otra manera, un programa es
una lista de operaciones que deben seguirse en orden para poder realizar un clculo (de manera similar
a lo que una receta de cocina es a un postre). Veamos un ejemplo bien simple:
x = 5

print(x )
Nos preguntamos qu hace este programa al ejecutarse? Lo primero que vemos es que el programa
tiene dos lneas, lo primero que se calcular es la primera lnea,

x = 5

y luego la segunda

print(x)

Una de las diferencias ms notorias entre la matemtica y un programa es que en el caso de los
programas, las variables pueden tener un valor en cierto momento y otro distinto luego, algo que no pasa
en matemtica.
En este caso, la primera lnea se lee as: a la variable x le asignamos el valor 5. Ojo, no signica que
x y 5 son lo mismo, ni que son iguales. Lo que signica es que la variable x va a guardar el valor 5 a
partir de esa lnea hasta que otra lnea le cambie el valor. Despus, se pasa a ejecutar a la segunda lnea

print(x),

que se lee as: mostrar el valor de

en la pantalla. Como a

se le ha asignado el valor 5, en

la pantalla se mostrar un 5. Despus de eso no hay ms lneas de cdigo as que el programa termina.
Ntese que

es tan solo el nombre que tiene la variable dentro del programa, y el usuario eso no lo ve.

Cadenas
Adems de los nmeros, nos ser til trabajar con texto. Para eso vamos a utilizar las cadenas. Una
cadena es simplemente una tira de smbolos (como los que vemos en el teclado de una computadora y
algunos ms). Las cadenas se escriben entre comillas, veamos algunos ejemplos:
" Soy

una

cadena "

" Veinticinco "


"25"
Es importante notar que la computadora distingue entre el nmero 25 (escrito sin comillas) y la
cadena 25. Si utilizamos la expresin sin comillas, nos estaremos reriendo al nmero, y si utilizamos
las comillas, nos estaremos reriendo a la cadena de longitud 2, compuesta por los smbolos 2 y 5. A la
hora de hacer cuentas, podremos hacerlas slo cuando trabajemos con nmeros, y nunca con cadenas.
Veamos cmo escribir un programa que le pide al usuario una cadena y la muestra por pantalla:

Pgina 2 de 6

1er

Introduccin a la Programacin

x =

input(Ingrese

print(El
print(x )

semestre de 2016

su nombre )

nombre ingresado es )

En este caso, la primera lnea del programa indica que al ejecutarse,

x =

input(Ingrese

su nombre )

se asignar a la variable

nombre

la cadena que ingrese el usuario, y a su vez la cadena

Ingrese su

es el texto que se le mostrar al usuario al momento de ejecucin, para que sepa qu dato se le

est pidiendo.
Luego

print(El

tenemos

al

print(x)

mismo

que

tenamos

antes,

pero

precedido

por

un

nombre ingresado es ) , que sirve para que en la pantalla se lea al terminar El nom-

bre ingresado es y luego el valor de la variable x, que fue asignado con la cadena que ingres el
usuario.
Inicialmente, vamos a esquematizar a los programas dividindolos de la siguiente manera:
1. Entrada de datos
2. Clculo y procesamiento
3. Salida de resultados
Por ahora, vamos a hacer programas que sirvan para resolver cuentas, como una calculadora. Ms
tarde, a lo largo de las prcticas, iremos introduciendo de a poco otras aplicaciones de los programas.

Programas en

Python

A la hora de escribir programas en una hoja de papel, uno puede tomarse ciertas licencias porque
en esos casos no hace falta que el programa sea entendido por una computadora. Pero cuando quiere
que as sea, es necesario escribir los programas en un lenguaje de programacin real. En nuestro caso,
el lenguaje es

Python.

El lenguaje Python es relativamente sencillo de entender comparado con otros

lenguajes de programacin como

Java,

sin embargo, como todo lenguaje de programacin, deben

respetar estrictamente sus reglas, o de lo contrario la computadora no ser capaz de entenderlo.

Pgina 3 de 6

1er

Introduccin a la Programacin

semestre de 2016

Notas preliminares
Los ejercicios marcados con el smbolo

constituyen un subconjunto mnimo de ejerci-

tacin. Sin embargo, aconsejamos fuertemente hacer todos los ejercicios.

Ejercicio 1
Escribir en papel, separando con una echa (), cada paso de las reducciones de las siguientes expresiones matemticas hasta hallar el valor nal al cual se reducen. (Ejemplo:
1.

20 + 12 13

2.

17/15 + 30

3.

17/15 30

4.

(17/15) 30

2+35 2+(35) 2+15 17).

Ejercicio 2 F
Dar expresiones de cdigo tal cual como las escribira en python para calcular las siguientes expresiones
matemticas.

x
y +
x+y
xy
x+ y
z
x y
z

[(x + y)2 ]2

Ejercicio 3
Escribir la expresin matemtica que representa al resultado de la suma de dos nmeros cualesquiera.
Escribir en papel un programa que pida al usuario dos valores cualquiera e imprima en pantalla la
suma de ambos.

Ejercicio 4
Escribir una expresin matemtica que dado un nmero natural evale al siguiente nmero ms
grande. Por ejemplo, dado el nmero 1 el resultado de evaluar la expresin es 2, dado 37 el resultado
es 38.
Escribir en papel un programa que pida al usuario un valor entero y devuelva el siguiente nmero
ms grande.

Ejercicio 5
Escribir una expresin matemtica que describa el promedio entre dos nmeros.
Escribir en papel un programa que pida al usuario dos nmeros y muestre por pantalla su promedio.

Ejercicio 6 F
Escribir un programa en la computadora que imprima en pantalla

Mi primer programa Python

Pgina 4 de 6

1er

Introduccin a la Programacin

semestre de 2016

Ejercicio 7
Escribir un programa en la computadora que imprima en pantalla

v
e
r
t
i
c
a
l
con un solo

print.

Ayuda, usar:

print("\n")

Ejercicio 8 F
Escribir un programa en Python que imprima la siguiente gura en la pantalla:

*****
*
*
*
*
*
*
*****
con un solo

print.

Ejercicio 9 F
Escribir un programa en Python que imprima la siguiente gura en la pantalla utilizando un solo

print:

*
***
*****
*******
*********

Ejercicio 10 F
Escribir un programa en Python que pida un dato al usuario y lo imprima por pantalla.

Ejercicio 11 F
Escribir un programa en Python que pida al usuario que ingrese un valor y luego imprima en la
pantalla:

******************************
* El resultado es: <valor>
******************************
donde en vez de

<valor>

debe mostrarse el valor que el usuario ingres por teclado.

Ejercicio 12 F
Pasar los ejercicios 2, 3, 4 y 5 hechos en papel a programas en Python y probarlos.

Ejercicio 13 F
Suponga que una persona desea invertir su capital en un banco y quiere saber cunto dinero tendr en
su cuenta si el banco incrementa el

6%

mensual(no acumulativo). Se le debe pedir al usuario el capital

a invertir y la cantidad de meses.

Pgina 5 de 6

1er

Introduccin a la Programacin

semestre de 2016

Ejercicio 14 F
Una empresa telefnica desea un programa para calcular el importe de sus clientes. Sabiendo que el
costo por comunicacin es de

$3

y por cada segundo se cobra

$0, 25

hacer dicho programa. Se deben

ingresar la cantidad de llamadas realizadas y el tiempo total de comunicacin, el programa debe devolver
el precio a cobrar.

Ejercicio 15 F
Un vendedor recibe un sueldo base de

$7000

ms un

10 %

extra del total de sus ventas, el vendedor

desea saber cunto dinero obtendr en total en el mes si ha logrado realizar

ventas este mes. Tenga en

cuenta el sueldo bsico y la comisin por las ventas. Hacer un programa que solicite el monto de cada
una de las ventas del mes e indique cul ser el sueldo nal del vendedor.

Ejercicio 16 F
Determinar cuntos segundos tiene una hora, y cuntos tiene un da.
Escribir una expresin matemtica que transforme un lapso de tiempo expresado en segundos a uno
expresado en minutos.
Escribir otra para transformar a horas y una ltima que transforme a das.
Escribir un programa en Python que pida al usuario una cantidad de segundos y muestre cuantos
minutos son, as como tambin cuantas horas y cuantos das.

Ejercicio 17 F
Escribir una expresin que dada una cantidad de segundos, evale a la cantidad de horas que stos
representan, pero esta vez descontando el total de das completos. Por ejemplo: 90.000 segundos
equivalen exactamente a 1 da y 1 hora, por lo que dados 90.000 segundos la expresin debera dar
1 hora.

Ayuda: Suponer que cuenta con el operador a %b que da el resto de hacer la divisin a/b.
dem punto anterior para minutos y segundos.
Escribir un programa en Python que pida al usuario una cantidad de segundos y muestre en pantalla
la cantidad de das, minutos y segundos que representa. Por ejemplo, si el usuario ingresa
segundos el programa debe mostrar por pantalla:

da

horas

minuto

86461

segundo.

Ejercicio 18 F
Escribir en Python un programa que pida al usuario que ingrese dos valores y los guarde en dos
variables,

y.

El programa deber intercambiar los valores de

y luego mostrar en pantalla:

El valor de x es: <x>


El valor de y es: <y>
donde en lugar de

<x>

<y>

deber mostrarse el valor de las respectivas variables.

Ejercicio 19 F
Escribir en Python un programa que pida al usuario que ingrese tres valores y los guarde en tres
variables,

x, y ,

z.

El programa deber intercambiar circularmente los valores de

debe tomar el valor de

y, y

el de

el de

x.

x, y

Y luego mostrarlos en pantalla:

El valor de x es: <x>


El valor de y es: <y>
El valor de z es: <z>
donde en lugar de

<x>, <y>

<z>

deber mostrarse el valor de las respectivas variables.

Pgina 6 de 6

z,

es decir,

Das könnte Ihnen auch gefallen