fb:porticula NoPaste
Kuchen für die Ziege
Uploader: | ytwinky |
Datum/Zeit: | 11.08.2007 17:16:54 |
#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(P As Punkt, Radius As Real, AnfangsWinkel As Real, EndWinkel As Real)
Sub Segment(P As Punkt, Radius As Real, AnfangsWinkel As Real, EndWinkel As Real)
Dim As Real w=AnfangsWinkel+(EndWinkel-AnfangsWinkel)/2, s=Radius/2
Circle(P.x, P.y), Radius, Rot, -AnfangsWinkel, -EndWinkel
If AnfangsWinkel=0 Then Line(P.x, P.y)-(P.x+Radius, P.y), Rot
Paint(P.x+s*Cos(w), P.y-s*Sin(w)), Gruen, Rot
'Circle (P.x, P.y), Radius, Gelb, -AnfangsWinkel, -EndWinkel
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'Passende Variablen deklarieren
Dim As Punkt P1 '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
Teile/=2
Cls
ScreenInfo ScreenWidth, ScreenHeight 'Auflösung holen, damit FB das auch weiß..
AnfangsWinkel=0
EndWinkel=Pi/8.0
Radius=ScreenHeight\2-2
P1.y=ScreenHeight\2
P1.x=ScreenWidth\2
Circle (P1.x, P1.y), Radius, Schwarz
For i=1 To Teile*2
Segment (P1, Radius, (i-1)*Pi/Teile, i*Pi/Teile) 'AnfangsWinkel, EndWinkel)
Next
Sleep 'und warten..
End '..und fertich ^^