ing1310 { introducci on a la computaci on pythoncreveco/progra/python.pdfpython ejercicio ing1310 {...

38
Python Ejercicio ING1310 – Introducci´on a la Computaci´on Python Conceptos B´ asicos Carlos Reveco [email protected] [email protected] Facultad de Ingenier´ ıa/Universidad de los Andes/Chile Rev : 254 C.Reveco Facultad de Ingenier´ ıa/Universidad de los Andes/Chile ING1310– Clase 23 1 / 38

Upload: others

Post on 28-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

ING1310 – Introduccion a la Computacion

PythonConceptos Basicos

Carlos [email protected]

[email protected]

Facultad de Ingenierıa/Universidad de los Andes/Chile

Rev : 254

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 1 / 38

Page 2: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

En esta clase

1 PythonMotivacionVariablesI/O ConsolaControl de FlujoFunciones, Metodos y ClasesModulos

2 Ejercicio

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 2 / 38

Page 3: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Python

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 3 / 38

Page 4: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Python

Motivacion

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 4 / 38

Page 5: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Nuevo lenguaje, mismo modo de pensar

• Veremos un nuevo lenguaje de programacion: Python• Especıficamente en su version 2.6

• Su uso sigue siendo para programar• Los grandes cambios estan en la sintaxis,• la forma de pensar se mantiene.

• Ustedes no aprendieron Java, aprendieron a programar.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 5 / 38

Page 6: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

¿Que tiene de diferente?

• Python es un lenguaje multiparadigma• orientado a objetos → puede tener clases y objetos,• imperativo → puede tener sentencias que cambien el estado del

programa,• funcional → puede tener funciones matematicas puras,• reflexivo → permite el acceso y modificacion de si mismo.

• Python es un lenguaje interpretado (script):• Su ejecucion se realiza mediante un interprete (no hay compilacion),• manejo de tipos de forma dinamica,• multiplataforma,• “pierde eficiencia”

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 6 / 38

Page 7: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Y?

Y hay mas cosas que lo hacen especial:

• open source → gratis

• desarrollo constante que lo mantiene actualizado

• comunidad activa en el desarrollo de modulos para distintos problemas

• programas con poco overhead, facil para crear programas desechables

• estable

• manejo automatico de memoria mediante conteo de referencias yrecoleccion de basura

• rendimiento superior a otros lenguajes interpretados

• extensiones con C o C++

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 7 / 38

Page 8: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Ejemplo: Hola Mundo en Python

print "Hola Mundo!"

• El codigo anterior funciona sin necesidad de nada mas.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 8 / 38

Page 9: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Detalles sintacticos basicos

• El termino de una sentencia esta dado por el salto de lınea• no se necesita un caracter especial como en Java (;)

• Los bloques se crean mediante un Tab• no se utilizan los parentesis de llave

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 9 / 38

Page 10: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Operadores basicos

• Se pueden utilizar los operadores aritmeticos binarios clasicos (+, −,∗, /, %)

• // → division entera,• ∗∗ → elevado a

• Tambien operadores unitarios clasicos (+, −)

• Los operadores de comparacion basicos son ==, ! =, <, >, <=, >=• is [not] → comparacion a nivel de objetos• [not] in → evaluacion sobre colecciones (incluidos strings)• Los operadores booleanos binarios son and, or, y not

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 10 / 38

Page 11: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Python

Variables

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 11 / 38

Page 12: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Tipos dinamicos

• No es necesario darles un tipo explıcito a las variables.• Esto implica que no se declaran, simplemente se usan,• desde su primer uso comienzan a existir.

• El contenido de la variable si tiene un tipo.• El contenido puede cambiar,• y el tipo de ese contenido tambien.

• El tipo influye en las operaciones que se pueden realizar.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 12 / 38

Page 13: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Ejemplo: Declaracion de variables

a = 2

b = a + 4

a = "un texto"

• El codigo anterior funciona sin necesidad de nada mas.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 13 / 38

Page 14: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Alcance (scope)

• Las variables viven dentro de su bloque.

• Si una variable se declara fuera de todo, entonces puede usarse encualquier parte.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 14 / 38

Page 15: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Python

I/O Consola

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 15 / 38

Page 16: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Output

• Para mostrar algo en consola utilizamos la instruccion print seguidapor lo que se quiere mostrar.

• Es una instruccion, no un metodo.

Ejemplo: Imprimiendo en la consola

print "Hola Mundo!"

a = "Ingenieria"

print a

a = 2*len(a)

print a

• len → largo de un string, o lista, o cualquier cosa dimensionable.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 16 / 38

Page 17: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Output

• Para imprimir multiples datos se utiliza la coma (,)

Ejemplo: Imprimiendo en la consola

a = 8

b = 6

c = ’lala’

print "Los valores son: ", a, b, c

• Para los strings se puede usar tanto la comilla doble como la simple.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 17 / 38

Page 18: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Input

• Para recibir informacion del usuario existe el metodo raw input

• Recibe como parametro un texto a mostrar.• Retorna lo ingresado por el usuario como texto.

Ejemplo: Recibiendo desde la consola

a = raw_input("Ingresa un numero:")

a = int(a)

print "Tu numero al cuadrado es: ", a**2

• int() → convierte el texto en entero.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 18 / 38

Page 19: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Python

Control de Flujo

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 19 / 38

Page 20: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Condiciones

• En python existen sentencias para if, else y else if

• La sintaxis es un poco diferente

Sintaxis Python: Condiciones

if condicion:

...

elif condicion:

...

else:

...

• Luego las instrucciones se escriben un tab mas adentro para cadabloque

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 20 / 38

Page 21: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Ejemplo: Condiciones

edad = int(raw_input("Ingrese su edad"))

genero = raw_input("Ingrese su genero: (M)asculino o (

F)emenino")

if edad < 2:

print "Aun es un bebe"

elif edad < 12 and genero == "M":

print "Eres un chiquillo"

elif edad < 12 and genero == "F":

print "Eres una chiquilla"

elif edad < 18:

print "Te falta poco para ser mayor de edad"

else:

print "Eres mayor de edad"

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 21 / 38

Page 22: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Ciclos

• En python existen sentencias para while y for

Sintaxis Python: Ciclos

while condicion:

...

for x in lista:

...

• El for difiere un poco del uso comun en otros lenguajes:• En python siempre itera sobre una lista.• En cada pasada x cambia al siguiente valor de la lista.• Dentro del ciclo no se debe modificar la lista

• Si se puede modificar su contenido.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 22 / 38

Page 23: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Generar secuencia para for

• El metodo range es una forma sencilla de crear una secuencia.• Lista de numeros que sigue un patron fijo.

• Tiene 3 alternativas para los parametros:• maximo (no incluıdo)• mınimo, maximo (no incluıdo)• mınimo, maximo (no incluıdo), salto

Ejemplo: Condiciones

# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

range (10)

# [5, 6, 7, 8, 9]

range(5, 10)

# [-50, -30, -10, 10, 30, 50, 70, 90]

range(-50, 100, 20)

• El # sirve para hacer comentarios• Es posible hacer print directamente sobre una lista.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 23 / 38

Page 24: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Ejemplo: Control de Flujo

max = int(raw_input("Ingresa el maximo: "))

min = int(raw_input("Ingresa el minimo: "))

if max < min:

print "Datos incorrectos"

else:

res = 0

for x in range(min , max):

res = res + x

print res

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 24 / 38

Page 25: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Python

Funciones, Metodos y Clases

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 25 / 38

Page 26: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Metodos → Funciones

• A los metodos se los asocia con OOP, ya que son parte de una clase.

• Cuando no son parte de una clase se suele llamarles funciones.

• En python pueden haber funciones.• Se utiliza el comando def para declararlas

Sintaxis Python: Funcion

def nombreFuncion(parametros):

pass

• pass se utiliza para dejar una funcion sin contenido.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 26 / 38

Page 27: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Funciones

• Los parametros de la funcion no llevan tipo

• La funcion tampoco tiene tipo de retorno• Se pueden retornar multiples valores utilizando el comando return

• Los valores van separados por coma• Se deben recibir en multiples variables

• Siempre hay retorno:• Si no se retorna explıcitamente, entonces la funcion retorna None

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 27 / 38

Page 28: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Ejemplo: Funciones

def metodo1 ():

print "metodo1"

def metodo2(n):

return n*4

def metodo3(n, m):

return n+1, m+2

def metodo4(n):

if n > 0:

return n*n

metodo1 ()

print metodo2 (2)

print metodo3(3, 5)

print metodo4 (3)

print metodo4 (-2)

• Las funciones deben ser declarados antes de su uso.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 28 / 38

Page 29: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Ejemplo: Funciones

def minimoYmaximo(n, m):

if n <= m:

return n, m

else:

return m, n

a = int(raw_input("Ingrese un numero: "))

b = int(raw_input("Ingrese otro numero: "))

min , max = minimoYmaximo(a, b)

print "El minimo es ", min , " y el maximo es ", max

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 29 / 38

Page 30: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Clases

• Para definir clases se utiliza el comando class

Sintaxis Python: Clase

class NombreClase:

pass

• No se declaran atributos.

• No se maneja visibilidad de los componentes.

• Todos los metodos deben recibir como primer parametro el elementoself

• El self mantiene la informacion de la clase,• si se quiere un atributo se hace self.nombreAtributo,• para invocar los metodos tambien se debe utilizar self

• Para el constructor se crea un metodo de nombre init

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 30 / 38

Page 31: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Crear objeto

• Simplemente se asigna a la variable el nombre de la clase

• no se usan comandos adicionales.

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 31 / 38

Page 32: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Ejemplo: Clases

class Alumno:

def __init__(self , nombre , p1 , p2 , ex):

self.nombre = nombre

self.p1 = p1

self.p2 = p2

self.ex = ex

def promedioPruebas(self):

return (self.p1 + self.p2)/2

def promedio(self):

promPruebas = self.promedioPruebas ()

prom = promPruebas *0.6 + self.ex*0.4

return prom

alumno = Alumno("Pedrito", 4.5, 3.5, 5.6)

print alumno.promedioPruebas ()

print alumno.promedio ()

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 32 / 38

Page 33: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Python

Modulos

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 33 / 38

Page 34: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Multiples archivos

• Dentro de python cada archivo es llamado un modulo

• Cada modulo puede contener funciones, clases, . . .

• Como es un lenguaje interpretado, se ejecuta un modulo (no hayproyectos)

• Si quiero usar otros modulos debo incorporarlos explıcitamentemediante el comando import

• El nombre del archivo correspondera al nombre del modulo (sin laextension)

• import funciones

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 34 / 38

Page 35: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Python Ejercicio

Ejercicio

C.Reveco Facultad de Ingenierıa/Universidad de los Andes/Chile ING1310– Clase 23 35 / 38

Page 36: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Ejercicio Python: Rango

Cree una clase Rango cuyo constructor reciba dos valores: un mınimo y unmaximo.Su clase debe tener dos metodos:

• Retorna la suma de los numeros en el rango con salto 1, y tambienretorna la multiplicacion de esos mismos valores.

• Recibe un entero como salto, y retorna la suma de la secuenciaformada por los numeros entre mınimo y maximo, con una distanciade salto entre ellos.

Su programa debe pedirle al usuario el mınimo y el maximo, crear un objetode su clase y mostrar el resultado de la invocacion del primer metodo. Luego,pedir un salto al usuario e invocar el metodo que suma los valores con elsalto, para mostrar el resultado entregado.

Page 37: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

Ejercicio Python: Rango

Este es un ejemplo del input y output de su programa:

Ingrese el minimo:

5

Ingrese el maximo:

20

La suma es 180 , y la multiplicacion es 5068545850368000

Ingrese un salto:

3

El resultado de la suma con salto es 55

Page 38: ING1310 { Introducci on a la Computaci on Pythoncreveco/progra/Python.pdfPython Ejercicio ING1310 { Introducci on a la Computaci on Python Conceptos B asicos Carlos Reveco creveco@dcc.uchile.cl

class Rango:

def __init__(self , min , max):

self.min = min

self.max = max

def sumaMultiplicacion(self):

suma = 0

mult = 1

for a in range(self.min , self.max):

suma += a

mult *= a

return suma , mult

def suma(self , salto):

res = 0;

for a in range(self.min , self.max , salto):

res += a

return res

print "Ingrese el minimo: "

min = int(raw_input ())

print "Ingrese el maximo: "

max = int(raw_input ())

r = Rango(min , max)

suma , mult = r.sumaMultiplicacion ()

print "La suma es", suma , ", y la multiplicacion es", mult

print "Ingrese un salto: "

salto = int(raw_input ())

res = r.suma(salto)

print "El resultado de la suma con salto es", res