HA3 7

tarikfori45
Mausschubser
Mausschubser
Beiträge: 47
Registriert: 11. Okt 2007 13:11

Beitrag von tarikfori45 »

hallo erst mal, ich hab eine Frage und zwar muss man map und local in H2-6-1 verwenden. meine Funktion braucht sie nicht. und sie funktioniert einwandfrei
Si tu ne clique pas sur le bouton actualiser, vous n'etes pas un technicien specialisé

BeatriceFriess
Mausschubser
Mausschubser
Beiträge: 70
Registriert: 1. Okt 2007 15:55
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von BeatriceFriess »

Du meinst H3-6-1 oder???
Also die Hausübung, die diese Woche fertig werden soll...
Und die Antwort ist ja...
Du sollst map benutzen...
Darum geht es ja in der Aufgabe..
Und es ist nicht besonders schwer....

tarikfori45
Mausschubser
Mausschubser
Beiträge: 47
Registriert: 11. Okt 2007 13:11

Beitrag von tarikfori45 »

ich hab H2 6-1 gemeint
Danke
Si tu ne clique pas sur le bouton actualiser, vous n'etes pas un technicien specialisé

BeatriceFriess
Mausschubser
Mausschubser
Beiträge: 70
Registriert: 1. Okt 2007 15:55
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von BeatriceFriess »

Ich hab da aber auch mal eine frage...
Und zwar wegen der H3 7.1 a

Also bei der Insert-at Prozedur..
Und zwar weiß ich nicht, wie ich dem sagen soll, das er das element an zweiter stelle rausnehmen soll...
Ich habe es probiert mit einer Laufvariablen, die ich in jedem Schritt um +1 addiere und bei i=2 (in dem Beispiel) dann das zeichen einfügen lasse....
Aber das funktioniert nicht wirklich...

Ich weiß nicht, wo ich den schritt ( + 1 i) einbauen soll...
Wenn ich es mit local mache, dann will der für den local teil ja noch etwas, wo ich aber nicht weiß was...

Oder gibt es vielleicht eine andere Lösung dafür, auf die ich nur noch nicht gekommen bin?

ChRiZz88
Mausschubser
Mausschubser
Beiträge: 87
Registriert: 7. Nov 2007 18:09
Kontaktdaten:

Beitrag von ChRiZz88 »

tarikfori45 hat geschrieben:ich hab H2 6-1 gemeint
Danke
die sollte doch schon vor ner Woche abgegeben worden sein?! Und nein, da hatten wir map noch gar nicht ...

@Beatrice: Du übergibst der Funktion, wenn ichs noch im Kopf habe, ja eine Position, ein Zeichen und eine Liste. Versuch mal nicht eine Laufvariable um 1 zu erhöhen, sondern deine Position bei jedem Durchlauf um 1 zu senken, wenns dann bei 0 ist --> einfügen ;)

BeatriceFriess
Mausschubser
Mausschubser
Beiträge: 70
Registriert: 1. Okt 2007 15:55
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von BeatriceFriess »

Danke^^
Inzwischen hab ich es auch gerafft...
Ich hänge jetzt bei Insert-everywhere...
ich bekomme da so tolle ergebnisse wie
(list (list 1 1) (list 2 1 2) (list 3 1 2 3) (list 4 1 2 3 4)) raus XD
aber ich denke, das bekomme ich noch hin

tarikfori45
Mausschubser
Mausschubser
Beiträge: 47
Registriert: 11. Okt 2007 13:11

Beitrag von tarikfori45 »

ChRiZz88 hat geschrieben: die sollte doch schon vor ner Woche abgegeben worden sein?! Und nein, da hatten wir map noch gar nicht..
das war nur ein Tippfehler, ich hab H3 6-1 gemeint :wink: :wink:

Stumpf.Alex
Nerd
Nerd
Beiträge: 643
Registriert: 1. Okt 2007 12:40
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von Stumpf.Alex »

btw: Ist euch aufgefallen, dass wir ein Jahr Zeit haben die Übung abzugeben? :lol:

BeatriceFriess
Mausschubser
Mausschubser
Beiträge: 70
Registriert: 1. Okt 2007 15:55
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von BeatriceFriess »

XD ich sehe es gerade
Och, dann kann ich mir ja Zeit lassen...

tarikfori45
Mausschubser
Mausschubser
Beiträge: 47
Registriert: 11. Okt 2007 13:11

Beitrag von tarikfori45 »

es sieht so aus,
Si tu ne clique pas sur le bouton actualiser, vous n'etes pas un technicien specialisé

BeatriceFriess
Mausschubser
Mausschubser
Beiträge: 70
Registriert: 1. Okt 2007 15:55
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von BeatriceFriess »

Okay, ich komme bei dem insert everywhere nicht weiter -.-
Kann mir mal einer helfen??

Ich weiß, das ich generate-all-pos brauche, um meine zahl an jede Stelle einzufügen... das einfügen geht mit insert-at aber das miteinander zu verbinden geht nicht wirklich.... um es an die erste stelle zu bekommen mache ich

(insert-at (first generate-all-pos 1 number) number alon) das gibt mir dann das Ergebnis
(list 4 1 2 3)

Aber wie gesagt, es geht nur für die erste stelle...
Ich stehe gerade irgendwie auf dem Schlauch, wie ich es für den Rest hinbekomme... ich muss die Prozedur mit dem Rest aufrufen...
Was sicherlich nicht das schwerste ist, aber ich hab gerade keine Ahnung, wie ich das da einbauen soll und vor allem, wie ich dazu map benutzen soll

marek
Mausschubser
Mausschubser
Beiträge: 85
Registriert: 18. Okt 2007 15:24
Wohnort: DA

Beitrag von marek »

LÄUFT!! Danke für Eure vielen Tipps!

marek
Mausschubser
Mausschubser
Beiträge: 85
Registriert: 18. Okt 2007 15:24
Wohnort: DA

Beitrag von marek »

Für die, die immer noch einen Denkanstoß brauchen:
Der Hinweis am Anfang der Aufgabe, sich erstmal mit INSERTION SORT vertraut zu machen, ist nicht völlig sinnlos. Die Ähnlichkeit der Verhältnisse insert/sort und insert-everywhere/perm ist einfach nicht zu übersehen. Viel Erfolg!

Christian.
Mausschubser
Mausschubser
Beiträge: 56
Registriert: 6. Aug 2007 22:38

Beitrag von Christian. »

danke fuer deinen ansatz, Skylo
ich habe es jetzt auch versucht so zu implementieren.
irgendwo ist aber noch der wurm drin...

Code: Alles auswählen

(perm '(1 2))
(list (list (list 2 1 2) (list 1 2 2) (list 1 2 2)))

(perm '(1 2 3))
(list
 (list
  (list (list (list 3 2 3) (list 2 3 3) (list 2 3 3)) 1 2 3)
  (list 1 (list (list 3 2 3) (list 2 3 3) (list 2 3 3)) 2 3)
  (list 1 2 (list (list 3 2 3) (list 2 3 3) (list 2 3 3)) 3)
  (list 1 2 3 (list (list 3 2 3) (list 2 3 3) (list 2 3 3))))) 

BeatriceFriess
Mausschubser
Mausschubser
Beiträge: 70
Registriert: 1. Okt 2007 15:55
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von BeatriceFriess »

Hab mal eine Frage, ob mir jemand kurz helfen kann...
Ich bin bei flatten-once...
Und das Beispiel gibt mir wie angegeben zurück (list 1 2 3)

Aber wenn ich jetzt eingebe (flatten-once '(1 2) ( 3 4 5)) dann hat er damit ein Problem... das gilt nur für die vorderen Teil...
Hier mal kurz mein Quelltext:

Code: Alles auswählen

(define (flatten-once liste)
  (cond
    [(empty? liste) empty]
    [(empty? (rest liste)) (first liste)]
    [else (cons (flatten-once (first liste)) (flatten-once (rest liste)))]))
Wobei ich auch finde, das ich das mit wenn die Liste leer ist gib den ersten Teil der Liste zurück auch nicht gerade gut gelöst ist...
Und auch genau an dieser Stelle gibt mir Scheme an, das ich einen Fehler drin hab

Antworten

Zurück zu „Archiv“