Pcs2d

Solución a Problemas Numéricos

Sep 3rd, 2014
257
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scheme 2.68 KB | None | 0 0
  1. ;; Calcular el consumo de kw segun la lectura del mes anterior y la lectura del mes actual
  2. (define (ConsumoKW lec-actual lec-anterior)
  3.   (if (> lec-actual lec-anterior)
  4.       (- lec-actual lec-anterior)
  5.       "error en el ingreso de datos"))
  6. ;; Calcular el costo del alumbrado publico segun los kw consumidos
  7. (define (AlumPublico kw)
  8.   (if (> 0 kw)
  9.       "error en los datos"
  10.       (* 80 kw)))
  11. ;; Calcular el costo de los kw consumidos
  12. (define (Consumo-Costo kw)
  13.   (if (> 0 kw)
  14.       "error en el ingreso de datos"
  15.       (* 200 kw)))
  16. ;; Calcular el costo de alumbrado publico segun el consumo mas el costo de los kw consumidos
  17. (define (Publico-Personal kw)
  18.   (if (> 0 kw)
  19.       "datum error"
  20.       (+ (* 80 kw) (* 200 kw))))
  21. (define (publico_personal kw)
  22.   (if (> 0 kw)
  23.       "datum error"
  24.       (+ (AlumPublico kw)
  25.          (Consumo-Costo kw))))
  26. ;; Calcular el impuesto segun el costo del alumbrado publico y el consumo
  27. (define (impuesto publiperson)
  28.   (if (> 0 publiperson)
  29.       "datum error"
  30.       (/(* publiperson 10) 100)))
  31. ;; Calcular el descuento segun el el estrato y el costo del alumbrado publico y el consumo
  32. (define (descuento publiperson estrato)
  33.   (if (> 0 publiperson)
  34.       "el consumo ingresado no es valido"
  35.       (if (> 0 estrato)
  36.           "estrato inexistente"
  37.           (if (or (= 1 estrato)(= 2 estrato))
  38.               (/ (* publiperson 45) 100)
  39.               (if (= 3 estrato)
  40.                   (/ (* publiperson 25) 100)
  41.                   "este estrato no recibe beneficios")))))
  42. ;; Calcula el cargo fijo segun el estrato
  43. (define (cargoFijo estrato)
  44.   (if (number? estrato)
  45.       (cond
  46.         [(= estrato 1)2000]
  47.         [(= estrato 2)3000]
  48.         [(= estrato 3)5000]
  49.         [(or (= estrato 4)(= estrato 5))8000]
  50.         [(or (= estrato 6)(= estrato 7))12000]
  51.         [else "estratos no validos"])
  52.       "valor indicado incorrecto"))
  53. ;; Calcular el valor total de la factura de enegia segun el estrato, el consumo, el alumbrado publico y sus respectivos impuestos, descuentos y cargos fijos
  54. (define (facturaEnergia estrato lec-actual lec-anterior)
  55.   (if (and (number? estrato)
  56.            (number? lec-anterior)
  57.            (number? lec-actual))
  58.       (cond
  59.         [(= estrato 1)(- (+ (cargoFijo estrato)
  60.                             (impuesto (+ (AlumPublico (ConsumoKW lec-actual lec-anterior))
  61.                                          (Consumo-Costo (ConsumoKW lec-actual lec-anterior)))))
  62.                          (descuento (+ (AlumPublico (ConsumoKW lec-actual lec-anterior))
  63.                                        (Consumo-Costo (ConsumoKW lec-actual lec-anterior))) estrato))]
  64.         [else "asedfadghd"])
  65.       "datos ingresados incorrectos"))
Advertisement
Add Comment
Please, Sign In to add comment