Modificar Datos de una Estructura - racket
Enunciado: crear una estructura CD que tenga 3 parámetros (artista, genero, costo). y crear una función que modifique uno de los campos de la estructura en este caso el artista del CD.
Ejemplo: entran los datos [ 'antonio ( 'jose 'salsa 50 ) ] y se modifica la estructura remplazando " 'jose " por " 'antonio ". El resultado de salida seria ( 'antonio 'salsa 50 )
Código
; ===========================================================================
; Autor: Jorge isaac peña caceres ; Fecha: 17/09/2018 ;---------------------------------------------------------------------------------- ;Definicion de estructura (define-struct CD (artist genero costo)) ;construir estructura ejemplo (define CDA (make-CD 'juan 'ranchera 50000)) ;funcion (define (cambiar-artista cantante estructura) (make-CD cantante (CD-genero estructura) (CD-costo estructura) )) ;prueba (cambiar-artista 'vicente CDA) ; ===========================================================================
Comparar Datos de una Estructura - racket
Enunciado: crear una estructura "sweater" que tenga 2 parámetros (talla, color). y crear una función que compare dos estructuras sweater donde devuelva la talla mas grande, y en caso de que la talla sea igual enviar un texto diciendo que ambos sacos son iguales.
Código
; ===========================================================================
; Autor: Jorge isaac peña caceres ; Fecha: 17/09/2018 ;----------------------------------------------------------------------------------
;Definicion de estructura
(define-struct sweater (size color))
;construir estructura ejemplo
(define sacoA (make-sweater 10 'rojo))
(define sacoB (make-sweater 20 'azul))
;funcion
(define (mejor-sweater estA estB)
(cond
[(> (sweater-size estA) (sweater-size estB)) (make-sweater (sweater-size estA) (sweater-color estA))]
[(> (sweater-size estB) (sweater-size estA)) (make-sweater (sweater-size estB) (sweater-color estB))]
[(= (sweater-size estA) (sweater-size estB)) "ambas tallas son iguales"]
[else "pendejo eso no es un sweater"]
)
)
;Prueba
(mejor-sweater sacoA sacoB)
; ===========================================================================
Toma de pantalla
