Modificar y Comparar Datos de una Estructura - struct

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

Modificar y Comparar Datos de una Estructura - struct scheme

Compartir en facebook twitter Google tumblr pinterest

Entradas similares

0 Comentarios