1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Listen in Racket

  • keine-ahnung
  • 7. November 2015 um 15:02
  • Unerledigt
  • erpel1
    4
    erpel1
    Mitglied
    Punkte
    130
    Beiträge
    26
    • 12. November 2015 um 22:18
    • #21

    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.

  • erpel1
    4
    erpel1
    Mitglied
    Punkte
    130
    Beiträge
    26
    • 12. November 2015 um 22:22
    • #22

    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.

  • NeinDanke
    1
    NeinDanke
    Gast
    • 12. November 2015 um 22:32
    • #23

    ()

    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 (13. November 2015 um 01:09) aus folgendem Grund: Forum ist ja Google-bar. Deswegen mal wieder rausgenommen.

  • erpel1
    4
    erpel1
    Mitglied
    Punkte
    130
    Beiträge
    26
    • 12. November 2015 um 22:54
    • #24

    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.

  • NeinDanke
    1
    NeinDanke
    Gast
    • 12. November 2015 um 23:04
    • #25

    ich hoffe einfach mal das wir nicht in der gleichen übung sind :grinning_squinting_face:
    ü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.

  • erpel1
    4
    erpel1
    Mitglied
    Punkte
    130
    Beiträge
    26
    • 13. November 2015 um 09:16
    • #26

    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.

  • NeinDanke
    1
    NeinDanke
    Gast
    • 13. November 2015 um 09:56
    • #27

    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

  • erpel1
    4
    erpel1
    Mitglied
    Punkte
    130
    Beiträge
    26
    • 13. November 2015 um 10:17
    • #28

    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 :frowning_face:

  • NeinDanke
    1
    NeinDanke
    Gast
    • 13. November 2015 um 10:28
    • #29

    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.

  • erpel1
    4
    erpel1
    Mitglied
    Punkte
    130
    Beiträge
    26
    • 13. November 2015 um 10:55
    • #30

    Aber wie füge ich die sortierte list in (define (lowest....)) ein? Das ist schon das erste problem bei mir.

  • NeinDanke
    1
    NeinDanke
    Gast
    • 13. November 2015 um 11:06
    • #31

    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.

  • erpel1
    4
    erpel1
    Mitglied
    Punkte
    130
    Beiträge
    26
    • 13. November 2015 um 11:08
    • #32

    define (sort some-products)



    (define (insert in some-products)

    Einmal editiert, zuletzt von erpel1 (13. November 2015 um 18:07)

  • NeinDanke
    1
    NeinDanke
    Gast
    • 13. November 2015 um 11:12
    • #33

    schau mal ob das was hilft wenn du das ersetzt

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

    Einmal editiert, zuletzt von NeinDanke (13. November 2015 um 12:34)

  • erpel1
    4
    erpel1
    Mitglied
    Punkte
    130
    Beiträge
    26
    • 13. November 2015 um 11:45
    • #34

    Jetzt hat die Sortierung geklapp :winking_face: danke dir.
    Man, ich wäre niemals darauf gekommen :frowning_face:

    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.

  • NeinDanke
    1
    NeinDanke
    Gast
    • 13. November 2015 um 11:50
    • #35

    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.

  • erpel1
    4
    erpel1
    Mitglied
    Punkte
    130
    Beiträge
    26
    • 13. November 2015 um 11:55
    • #36

    Brauche fast 2 Std um nach DA zu kommen. Lohnt sich also nicht. Wäre zu knapp. Nutze lieber die restliche zeit um wenigstens 1 aufgabe zu machen.

  • NeinDanke
    1
    NeinDanke
    Gast
    • 13. November 2015 um 12:01
    • #37

    Na dann viel erfolg :)

  • erpel1
    4
    erpel1
    Mitglied
    Punkte
    130
    Beiträge
    26
    • 13. November 2015 um 12:28
    • #38

    Danke dir auch. Bin sicher du wirst es schaffen :winking_face:

  • erpel1
    4
    erpel1
    Mitglied
    Punkte
    130
    Beiträge
    26
    • 13. November 2015 um 12:31
    • #39

    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.

  • NeinDanke
    1
    NeinDanke
    Gast
    • 13. November 2015 um 12:33
    • #40

    also bei mir sieht die letzte zeile so aus
    [else (product-price (first (sort lop)))]

Jetzt mitmachen!

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

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung