home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Power-Programmierung
/
CD1.mdf
/
magazine
/
nvdc87
/
circle
/
piedemo.bas
< prev
Wrap
BASIC Source File
|
1987-06-16
|
1KB
|
59 lines
REM - program PIEDEMO
REM - demonstrates PieChart subroutine
PI=3.141592
DIM Pie%(10)
Again:
CLS
INPUT "HOW MANY CATEGORIES (MAX = 10, 0 TO EXIT)";Pie%(0)
IF Pie%(0)=0 THEN END
IF Pie%(0)<2 OR Pie%(0)>10 THEN BEEP : GOTO Again
Sum=0
FOR I=1 TO (Pie%(0)-1)
LOCATE I+10,20
PRINT "ENTER PERCENTAGE FOR CATEGORY ";I;
INPUT Pie%(I)
Sum=Sum+Pie%(I)
NEXT I
IF Sum >= 100 THEN
CLS
BEEP
LOCATE 10,20
PRINT "PERCENTAGES TOTAL MORE THAN 100 - TRY Again"
FOR I = 1 TO 1000 : NEXT I
GOTO Again
ELSE
Pie%(Pie%(0))=100-Sum
END IF
CALL PieChart (Pie%())
GOTO Again
REM - subroutine starts here
SUB PieChart (Pie%(1))
10 LOCAL XCenter,YCenter,Radius,StartAngle,StopAngle,Counter
20 SHARED PI
30 XCenter = 0
40 YCenter = 0
50 Radius = 160
60 StartAngle = 0
70 CLS : SCREEN 2 'Use SCREEN 9 for EGA color; 10 for EGA mono
80 FOR Counter = 1 TO Pie%(0)
90 StopAngle = StartAngle + Pie%(Counter)*0.02*PI
100 CIRCLE STEP (XCenter,YCenter),Radius,,StartAngle,-StopAngle
110 StartAngle = StopAngle
120 NEXT Counter
130 WHILE NOT INSTAT : WEND
140 K$ = INKEY$
END SUB