Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #! /usr/bin/python
- # -*- coding: utf-8 -*-
- """2. (5 puntos) Analice el archivo almacenes.py y diga:
- 1. ¿Qué hace cada método?
- 2. ¿Cuáles son las variables y métodos estáticos?
- 3. Comente el código."""
- #variables: capacidad, capacidad_max, nombre, maxima, volumen
- #variables globales: capacidad y capacidad_max
- #metodos estaticos: lleno
- class Almacen():
- capacidad = 0
- capacidad_max = 0
- """__init__ tiene de entrada el objeto, el nombre el almacen y capacidad máxima
- crea un almacen nuevo con capacidad inicial cero
- y capacidad máxima "x" """
- def __init__(self, nombre, maxima):
- self.capacidad = 0
- self.capacidad_max = maxima
- print "Almacén %s creado. Capacidad máxima %.2f" % (nombre, maxima)
- Almacen.capacidad_max += maxima
- """entra_grano tiene de entrada el objeto y el volumen que entrará
- se realizan sumas para saber el volumen total
- despues checa si es posible agregar más volumen o si está lleno
- si sí, entonces lo suma, si no entonces te dice el cupo que pudo sumar
- """
- def entra_grano(self, volumen):
- volumen = float(volumen)
- volumen_total = self.capacidad + volumen
- if self.capacidad_max < volumen_total:
- Almacen.capacidad += (self.capacidad_max - self.capacidad)
- self.capacidad = self.capacidad_max
- excedente = volumen_total - self.capacidad_max
- cupo = volumen - excedente
- print "Este almacen pudo recibir %.2f." % cupo
- Almacen.lleno(excedente)#nos dice el excedente de la entrada
- else:
- self.capacidad += volumen
- Almacen.capacidad += volumen #todo cool si pudo agregar grano
- print "OK"
- """ lleno en caso de que el almacen esté lleno
- da el sobrante de grano que le pide acomodar en otro almacen
- si todos los almacenes están llenos, pide que se deberán almacenar
- en otra empresa"""
- def lleno(volumen):
- volumen_total = Almacen.capacidad + float(volumen)
- if Almacen.capacidad_max >= volumen_total:
- print "Sobran %.2f unidades. Busque otro almacen." % volumen
- else:
- cupo = Almacen.capacidad_max - Almacen.capacidad
- print "Nuestros otros almacenes pueden recibir hasta %.2f." % cupo
- print "El resto deberá ser almacenado por otra empresa."
- lleno = staticmethod(lleno)
- bodega1 = Almacen("Centro", 2500)
- bodega2 = Almacen("Norte", 1500)
- bodega3 = Almacen("Sur", 2000)
- print "Enviando 2000 a Almacen Centro..."
- bodega1.entra_grano(2000)
- print "Enviando 1000 a Almacen Sur..."
- bodega3.entra_grano(1000)
- print "Enviando 1300 a Almacen Norte..."
- bodega2.entra_grano(1300)
- print "Enviando 800 a Almacen Centro..."
- bodega1.entra_grano(800)
- print "Enviando 300 a Almacen Sur..."
- bodega3.entra_grano(300)
- print "Enviando 1000 a Almacen Norte..."
- bodega2.entra_grano(1000)
Advertisement
Add Comment
Please, Sign In to add comment