fb:porticula NoPaste
Jetzt ist auch zurückschieben erlaubt
Uploader: | ytwinky |
Datum/Zeit: | 12.08.2007 00:15:41 |
#define auf ,
Enum
Schwarz, Blau, Gruen, Tuerkis, Rot, Lila, Braun, Grau
Dunkelgrau, Hellblau, Hellgruen, Helltuerkis, Helllila, Hellrot, Gelb, Weiss
End Enum
Type Real As Single
Type Punkt 'wir definieren einen neuen Typ mit unseren Eigenschaften
As Integer x, y 'diese beiden Werte legen einen Punkt fest
End Type '..so, fertig ist der Typ^^
Declare Sub Segment(Titel As String, P As Punkt, Radius As Real, AnfangsWinkel As Real, EndWinkel As Real, Farbe As Integer=Rot, Welches As Integer=0)
Sub Segment(Titel As String, P As Punkt, Radius As Real, AnfangsWinkel As Real, EndWinkel As Real, Farbe As Integer=Rot, Welches As Integer=0)
Dim As Real w=AnfangsWinkel+(EndWinkel-AnfangsWinkel)/2, s=Radius/2, dx, dy
Dim As Real hdx, hdy
If Welches Then
hdx=10*Cos(w)
hdy=-10*Sin(w)
End If
dx=s*Cos(w)
dy=-s*Sin(w)
' If Welches=0 Then
Circle(P.x+hdx, P.y+hdy), Radius, Farbe, -AnfangsWinkel, -EndWinkel
If AnfangsWinkel=0 Then Line(P.x+hdx, P.y+hdy)-(P.x+hdx+Radius, P.y+hdy), Farbe
Paint(P.x+hdx+dx, P.y+hdx+dy), Gruen, Farbe
Draw String (P.x+dx, P.y+dy), Titel, Schwarz
' End If
End Sub
WindowTitle"Kuchen für die Ziege"
Const Res800x600=19 'Auflösung..
Const Pi=4.0*Atn(1.0)
Dim As Integer ScreenWidth, ScreenHeight, Radius, i, Welches 'Passende Variablen deklarieren
Dim As Punkt P1, P2 'die Koordinaten dafür denken wir uns aus..
Dim As Real AnfangsWinkel, EndWinkel, s, w, rechts, hoch, Teile
Screen Res800x600 'Dank sinnvoller Belegung wissen wir, welche Dimension der Bildschirm hat
Color Schwarz auf Grau
Input"Anzahl der Kuchenteile:", Teile
Cls
ScreenInfo ScreenWidth, ScreenHeight 'Auflösung holen, damit FB das auch weiß..
Teile/=2
Do
Locate 1, 1
?!"Kuchenstcke zurckschieben ist ausdrcklich erlaubt(0 eingeben)\nWelches Kuchenstck heraus ziehen(Wert<0 für Ende): \8\8\8";
Input Welches
If Welches>=0 Then
Cls
AnfangsWinkel=0
EndWinkel=Pi/8.0
Radius=ScreenHeight\2-50
P1.y=ScreenHeight\2
P1.x=ScreenWidth\2
For i=1 To Teile*2
Segment ("" &i, P1, Radius, (i-1)*Pi/Teile, i*Pi/Teile, Rot, i=Welches) 'AnfangsWinkel, EndWinkel)
Next
End If
Loop Until Welches<0
End '..und fertich ^^