3. Ubung zur Vorlesung Informatik A

Werbung
09.11.2001

3. Ubung
zur Vorlesung Informatik A
Institut f
ur Informatik, FU Berlin, WS 2001/2002
1. (2 Punkte) Sei P (x; y ) das Pradikat "x belegt Vorlesung y ", wobei x aus der Menge
aller Studenten am Institut ist und y aus der Menge der in diesem Semester angebotenen
Vorlesungen.
Beschreiben Sie die folgenden Aussagen in deutschen Satzen.
(a)
(b)
(c)
98
89
88
x
y
x
98
89
99
( ),
xP (x; y ),
yP (x; y ),
( )
x yP (x; y )
x yP (x; y )
yP x; y
y
xP x; y
2. (4 Punkte) Bestimmen Sie den Wahrheitswert der folgenden Aussagen fur reelle Variablen
x; y; z und schreiben Sie die dazu negierten Aussagen ohne Verwendung des Operators :.
(a)
(b)
(c)
(d)
8 ( 2 1_ 2 )
8 9 8 ( 6= 0 ^ 6= )
8 8 9 ( 0_( 0^ 8 9 8 ( () + )
x
x
<
x
x
y
z
y
x
y
z
x
x
y
z
tan z
> x
x
y >
y
z
x
> x
z <
x
y
z >
0))
y
3. (6 Punkte) Legen Sie ein Haskell{Skript Dierent.hs bzw. Dierent.lhs an, das die folgenden Funktionen enthalt und zusatzlich ggf. von Ihnen denierte weitere Hilfsfunktionen.
(a) Eine Funktion threeDiff :: Int > Int > Int > Bool, die genau dann
True ergibt, wenn die Argumente paarweise verschieden sind.
(b) Eine Funktion threeEqual :: Int > Int > Int > Bool, die genau dann
True ergibt, wenn alle Argumente gleich sind.
(c) Eine Funktion howManyDiff :: Int > Int > Int > Int, die angibt, wie
viele verschiedene Argumente auftreten.
4. (4 Punkte) Sie kennen quadratische Gleichungen der Form ax2 + bx + c = 0, wobei die
Parameter a; b; c reelle Zahlen sind. Falls a 6= 0, so heien die Geichungen nichtdegeneriert.
Sie erinnern sich auch, dass eine nichtdegenerierte Gleichung 2 reelle Nullstellen hat, falls
2
2
b > 4ac ist, eine reelle Nullstellen im Fall b = 4ac und keine reelle Nullstellen sonst.
Im degenerierten Fall a = 0 gibt es keine Nullstelle falls b = 0; c 6= 0, eine Nullstelle falls
b 6= 0 und jede reelle Zahl erf
ullt die Gleichung, falls alle Parameter 0 sind.
Legen Sie ein Haskell{Skript QuadratGl.hs bzw. QuadratGl.lhs an, dass die folgenden
Funktionen enthalt.
(a) Eine Funktion numberNDroots :: Float > Float > Float > Int soll
die Anzahl der Nullstellen ausgeben fur den Fall, dass a 6= 0 ansonsten eine Fehlermeldung.
(b) Eine Funktion numberRoots :: Float > Float > Float > Int , die die
Anzahl der Nullstellen im allgemeinen Fall angibt. Falls jede reelle Zahl Nullstelle
ist, soll der Funktionswert 3 sein.
Hinweise:
mentierung.
Achten Sie bei Programmieraufgaben immer auf eine ausreichende und klare Kom-
Melden Sie sich bei [email protected] und Tutor bis 16.11. mit Matrikelnummer an, wenn Sie einen benoteten Schein brauchen. (Mail subject: Note)
Abgabe: 21.11.2000, 12 Uhr s.t.
Herunterladen