www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Englisch
  Status Grammatik
  Status Lektüre
  Status Korrekturlesen
  Status Übersetzung
  Status Sonstiges (Englisch)

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Haskell" - Haskell - Tupel
Haskell - Tupel < Haskell < Programmiersprachen < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Haskell"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Haskell - Tupel: Parkettieren?
Status: (Frage) überfällig Status 
Datum: 17:48 Do 29.11.2007
Autor: franzigoth1

Aufgabe
Ein rechteckiges Areal soll mit gleichgro¼en quadratischen Tafeln ausgelegt (parkettiert) werden. Allerdings
erschwert sich dieses Problem dadurch, dass die Tafeln an ihren Seiten mit unterschiedlichen Nuten ausgerüstet
sind. Zwei Tafeln können nur dann aneinander gelegt werden, falls die anstoßenden Seiten kompatible Nuten
haben. Die Frage ist, ob bei einer gegebenen Artenvielfalt von Tafeln eine Parkettierung möglich ist.
Implementieren Sie eine Haskell-Funktion parkettiere, die in Abhängigkeit von gegebenen Tafelarten feststellt,
ob in einem Areal einer gewissen Länge (ein Vielfaches der Kantenlänge jeder verfügbaren Tafel) eine gewisse
Anzahl von Tafeln, beginnend von links unten nach rechts oben, ausgelegt werden kann.
Folgende Typvorgaben sollen genutzt werden:

type Tafelart = (Int,Int,Int,Int)
type Tafelartliste = [Tafelart]
type Parkett = [Tafelartliste]
type Laenge = Int
type Anzahl = Int
parkettiere::(Tafelartliste,Laenge,Anzahl)->Parkett

Jede Tafel ist also als Quadrupel beschrieben, wobei die vier Zahlen in der entsprechenden Reihenfolge die Seiten
unten, links, oben, rechts angeben. Zwei Seiten haben genau dann kompatible Nuten, falls beide die gleiche Zahl
haben.
Die Tafelliste als Argument der Funktion parkettiere legt die vorhandenen Tafelarten fest. Von jeder Tafelart
stehen beliebig viele Tafeln zur VerfÄugung. Ein Parkett ist dann eine Liste von Tafelartlisten, die von unten
nach oben die Zuordnung der Tafeln zu den jeweiligen Parkettzeilen beschreibt.

--Standard-Testfall
parkettiere (ta,2,4) == MB(1,2,3,4),(1,4,3,2)],[(3,1,2,4),(3,4,2,1)
ta=[(1,2,3,4),(3,1,2,4),(1,4,3,2),(3,4,2,1)]

type Tafelart        = (Int,Int,Int,Int)
type Tafelartliste   = [Tafelart]
type Parkett         = [Tafelartliste]
type Laenge          = Int
type Anzahl          = Int

parkettiere::(Tafelartliste,Laenge,Anzahl)->Parkett

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.



Hallo,....

Ich wollt fragen ob mir einer die Aufgabe erklähren könnte und mir gegebenenfalls beim Anfang helfen könnte?
Weiß nämlich nicht, was ich jetzt machen soll, aber könnte es so was ähnliches sein wie beim 8-Damen-Problem, nur das man diesmal die Föälle rausgibt, wo die Tische passen???

Bitte um Antwort.

        
Bezug
Haskell - Tupel: Fälligkeit abgelaufen
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 18:55 Mo 03.12.2007
Autor: matux

$MATUXTEXT(ueberfaellige_frage)
Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Haskell"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.englischraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]