Listen in Racket

  • Danke für den Tipp. Hatte ich auch vor, wusste dann aber nicht wie ich das machen soll. Habe schon gegoogelt um ähnliche Aufgabentypen zu finden, damit ich dahinter steige. Hat aber nicht geklappt.

  • Bin erst seit zwei wochen bei FOP. Die Wochen davor habe ich verpasst, da ich nicht wusste, das ich FOP machen muss. Bei mir stand in der Prüfungsordnung noch GdI. Hatte nicht mitbekommen dass der Name sich geändert hatte.

  • ()


    Ich hab mal zeug rausgenommen, bissi was selber machen :D. Außerdem ist das thema insert-sort in den Folien ab T3.77 (Kapitel 3 Folie 77)

    Einmal editiert, zuletzt von NeinDanke () aus folgendem Grund: Forum ist ja Google-bar. Deswegen mal wieder rausgenommen.

  • Danke.
    Hätte nicht sein müssen. Wollte auch nicht fragen, ob du´s posten kannst. Nicht dass du dann Probleme bekommst, wenn die Abgabe dann identisch ist bzw. fast.


    Ich glaube sogar dass ich das ganze auch mal mit Insert-sort ausprobiert habe und dann alles wieder verworfen habe, weil ich nicht wusste wie ich den Rest miteinander kombiniere.
    Aber trotzdem vielen dank für diesen Tipp. Wollte schon aufgeben. Aber jetzt bzw. später werde ich mich nochmal daran setzen und es versuchen.

  • ich hoffe einfach mal das wir nicht in der gleichen übung sind :D
    übrigens sind morgen auch noch 2 sprechstunden falls du dann immernoch probleme hast oder bei der .3 oder .4 nicht weiter kommst. werde denke ich auch zu einer davon gehen.

  • Moin,
    komme irgendwie nicht weiter.


    Zur Aufgabe 5.1.


    Habe die sortierte Produktlist nach Preis.
    Vergleiche sortierte Produktliste mit der von mir eingegebenen "Einkaufsliste" und spucke den ersten Wert aus, der beim Vergleich true ergibt


    Zur Aufgabe 5.2:
    Nehme wiederum die sortierte Produktliste.
    Überprüfe ob das gesuchte Produkt in der Liste vorhanden ist.
    Wenn true, dann gebe ich das Produkt aus der sortierten P-liste aus, welches als erstes überprüft wird und true ergibt, da dies in der sortierten P-liste das günstigste ist.


    Mein Problem ist nun das ganze zu implementieren bzw. die Prozeduren slowest-price und cheapest-price.
    Um den Vergleich zu machen würde ich contains? benutzen. Aber wie verbinde ich das ganze mit den Prozeduren slowest-price und cheapest-price?
    Mein Problem ist, dass ich nicht weiss wie man bereits vorhandene Prozeduren miteinander verbindet.

  • ich geb dir mal meine verträge und beispiele zu den beiden, vll hilft dir das weiter:


    ;; Task 1
    ;; lowest-price: (listof products) -> number
    ;; give out lowest price for a product on a given list
    ;; if list is empty give out +inf.0
    ;; example: (lowest-price (list (make-product 'P1 1 'S1) (make-product 'P2 3 'S1))) result 1


    ;; Task 2
    ;; cheapest-product: (listof products) -> product
    ;; give out name of cheapest product on a list
    ;; if list is empty give out null
    ;; example: (cheapest-product (list (make-product 'P1 1 'S1) (make-product 'P2 3 'S1))) result 'P1

  • Die verträge hab ich auch so.
    zu (make-product 'P1 1 'S1) :
    Dieses (make...) hast du Dir selbst ausgedacht, hat aber nichts mit der gegebenen Produktlist zu tun, oder?


    Ich komme einfach drauf wie man alles miteinander verbindet! Habe die sortierte Liste. und nun?
    wie kann ich das jetzt zusammenfügen mit slowest-price? Habe das problem nicht zu wissen wie ich das ganze aufrufen muss. Daran hängt alles bei mir :(

  • Das (make...) ist im template gegeben.
    Die sortierte liste bzw die hilfsfunktion zum sortieren von listen brauchst du, um zb aus
    > (sorted-product-list (list (make-product 'P2 25 'S1) (make-product 'P4 27 'S1) (make-product 'P1 6 'S2)))
    (list (make-product 'P1 6 'S2) (make-product 'P2 25 'S1) (make-product 'P4 27 'S1))
    zu machen.
    Dann rufst du in (define (lowest-price lop)...) den preis des ersten produkts der sortierten liste auf. Falls die liste nicht leer ist.

  • Wenn du zb some-products sortieren willst, ist es ja (sort some-products).
    Wenn du das erste produkt in some-products (unsortiert) haben willst, ist es (first some-products).
    Jetzt willst du den product-price des ersten produkts der sortierten liste.

  • schau mal ob das was hilft wenn du das ersetzt


    [(<= ...]
    [(> ...)

  • Jetzt hat die Sortierung geklapp ;) danke dir.
    Man, ich wäre niemals darauf gekommen :(


    Wie kommst du auf diese schreibweise? HAbe das so niergends gefunden. Kein wunder das ich da nicht drauf komme.


    Ist mir eigentlich alles total peinlich, weil ich dir die zeit raube.
    Mach du lieber weiter und lass dich nicht von mr ablenken, hast bestimmt genug zu tun.
    Wenn ich noch fragen habe und du zeit hast kannst du ja antworten. Nehme es dir auch nicht übel!
    Falls es bei mir nicht klappen sollte mit der Abgabe, habe ich halt pech gehabt.

  • Kein problem. und wie gesagt, heute ist noch eine sprechstunde von 15:30 bis 16:30 im LZI. da kannst du ja auch hin falls du nicht weiter kommst.

  • Habe folgendes geschrieben, um den lowest-price zu berechen


    ((define (lowest-price sorted-product-list )
    (cond
    [(empty? sorted-product-list) +inf.0]
    [(first sorted-product-list) (cons (first some-products)) ]))


    Bekomme jedoch eine Fehlermeldung beim 2ten check, weil ein wert erwartet wird.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!