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