Usuario:Pilonieta:Heuristica:DrScheme:Ejercicio 3.3.1

De Wikilibros, la colección de libros de texto de contenido libre.
;Los Estados Unidos usan el Sistema Inglés de medidas.  El resto del

;mundo usa el sistema métrico. Por lo tanto, personas que viajan al 
;extranjero y compañías que comercian con socios extrajeros 
;usualmente necesitan convertir de medidas 
;inglesas a las métricas y viceversa. La siguiente tabla muestra las 
;6 unidades principales medidas de longitud del Sistema Inglés:
;Inglés        Métrico  
;1 inch     =  2.54  cm  
;1 foot     =  12  in.  
;1 yard     =  3  ft.  
;1 rod      =  5(1/2)  yd.  
;1 furlong  =  40  rd.  
;1 mile     =  8  fl.  

;Crear las funciones inches->cm, feet->inches, yards->feet, rods- 
;>yards, furlongs->rods,and miles->furlongs. 
;Luego desarrolla las funciones feet->cm, yards->cm, rods->inches, 
;and miles->feet. 

(define INCH 2.54)

(define FOOT 12)

(define YARD 3)

(define ROD 5.05)

(define FURLONG 40)

(define MILE 8)


;inches->cm : número -> número

;recibe pulgadas y retorna el equivalente en centímetros

;(define (inches->cm inches) ...)

(define (inches->cm inches)

(* inches INCH) )


;feet->inches : número -> número

;recibe pies y retorna el equivalente en pulgadas
;(define (feet->inches feet) ...)

(define (feet->inches feet)

(* feet FOOT) )


;yards->feet : número -> número

;recibe yardas y retorna el equivalente en pies

;(define (yards->feet yards) ...)

(define (yards->feet yards)

(* yards YARD) )


;rods->yards : número -> número
;recibe "rods" y retorna el equivalente en yardas
;(define (rods->yards rods) ...)

(define (rods->yards rods)

(* rods ROD) )


;furlongs->rods : número -> número
;recibe "furlongs" y retorna su equivalente en "rods"
;(define (furlongs->rods furlongs) ...)

(define (furlongs->rods furlongs) (* furlongs FURLONG) )


;miles->furlongs : número -> número

;recibe millas y retorna el equivalente en "furlongs"
;define (miles->furlongs miles) ...)


(define (miles->furlongs miles)

(* miles MILE) )


(define (feet->cm feet)

(inches->cm (feet->inches feet)))


(define (yards->cm yards)

(inches->cm (feet->inches (yards->feet yards))))

(define (rods->inches rods)

(feet->inches (yards->feet (rods->yards rods))))

(define (miles->feet miles)

(yards->feet (rods->yards (furlongs->rods (miles->furlongs miles)))))


;Ejemplos:

(inches->cm 1)

(feet->inches 1)

(yards->feet 1)

(rods->yards 1)

(furlongs->rods 1)

(miles->furlongs 1)

Version Python