www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 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" - selbstdefinierte Datentypen
selbstdefinierte Datentypen < Haskell < Programmiersprachen < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Haskell"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

selbstdefinierte Datentypen: Datentypen
Status: (Frage) überfällig Status 
Datum: 18:28 Mo 08.12.2008
Autor: haski

Aufgabe
Es soll aus einem Datentyp ein bestimmtes Element zurückgegeben werden

Hintergrund:
data StateE = StateE Model [Edge]
deriving Show
-- bildet eine Kante aus dem Index der Klausel mit Hilfe des Models
buildEdge :: StateE -> [Edge]
buildEdge (StateE m k) = concat [[(-x,y) | x <- c , y <- [last c], x /= y], k]
where c = a2 ! (fromIntegral (clauseIx m))
t2 = buildEdge (StateE [(4,I,3,1),(3,I,2,1),(2,I,1,1),(1,I,4,0)] [(1,2)])


data G_edges a = EdgeResult a
deriving Show
-- bildet sukzessive alle Kanten für den Implikationsgraphen mit Hilfe des Models
buildEdges :: StateE -> (G_edges StateE)
buildEdges  (StateE m k)  
| trace (show (StateE m k)) False = undefined
| m == [] = EdgeResult (StateE m k)
| m /= [] = let newStateE = (StateE (tail m) (buildEdge (StateE m k))) in
case (buildEdges newStateE) of
EdgeResult e -> EdgeResult e
t3 = buildEdges (StateE [(4,I,3,1),(3,I,2,1),(2,I,1,1),(1,I,4,0)] [(1,2)])

Ich konstruiere mir Tupel (aus einer Liste bestehend aus Quadrupel), die ich später als Eingabe für die Kanten eines Graphen benötige.

Aus einem selbstdefinierten Datentyp:

data StateE = StateE Model [Edge]
deriving Show

möchte ich nur [Edge] ausgeben lassen.

Meine Überlegung ist:

get_edge :: (G_edges StateE) => StateE -> [Edge]
get_edge (StateE m k) = k

das funktioniert leider nicht. Es ist bestimmt sehr einfach. Brauche eure Hilfe !!




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

        
Bezug
selbstdefinierte Datentypen: Fälligkeit abgelaufen
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 19:20 Mi 10.12.2008
Autor: matux

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


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]