User Tools

Site Tools


jbev_sin

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
jbev_sin [2026/05/27 15:47] – adminjbev_sin [2026/09/15 23:10] (current) – admin
Line 37: Line 37:
 1 line 1 line
  
-<code>1 A=40+40*SIN(T):B=40+40*COS(T*I):IF A>B THEN SWAP A,B:?TAB(A)STRING$(B-A,".")"*":T=T+.1:I=I+.001:GOTO<code>+<code>1 A=40+40*SIN(T):B=40+40*COS(T*I):IF A>B THEN SWAP A,B:?TAB(A)STRING$(B-A,".")"*":T=T+.1:I=I+.001:GOTO</code> 
 + 
 +<code>1 1 A=30+30*SIN(T):B=30+30*COS(T*I):L=ABS(A-B):?TAB((A+B-L)/2)STRING$(L/2,".")"*"STRING$(L/2,".");:T=T+.1:I=I+.001:GOTO 1</code> 
 + 
 +**CP/M MBasic friendly** \\ 
 + 
 +<code>10 T=0:I=0 
 +20 A=30+30*SIN(T) 
 +30 B=30+30*COS(T*I) 
 +40 L=INT(ABS(A-B)/2) 
 +50 P=INT((A+B)/2-L) 
 +55 IF P<0 THEN P=0 
 +60 PRINT TAB(P); 
 +70 PRINT STRING$(L,"."); 
 +80 PRINT "*"; 
 +85 PRINT STRING$(L,".") 
 +90 T=T+.1 
 +100 I=I+.001 
 +110 GOTO 20</code> 
 + 
 +**VAX VMS Basic** \\ 
 + 
 +<code>10  ! Centered Asterisk Ribbon Pattern 
 +20  D$ = "................................................................................" 
 +30  W = 38 
 +40  T = 0.0 
 +50  I = 0.0 
 +60  A = INT(W + W * SIN(T)) 
 +70  B = INT(W + W * COS(T * I)) 
 +80  L = A 
 +90  R = B 
 +100 IF L <= R GOTO 130 
 +110 L = B 
 +120 R = A 
 +130 M1 = INT((R - L) / 2) 
 +140 M2 = (R - L) - M1 
 +150 PRINT TAB(L); LEFT$(D$, M1); "*"; LEFT$(D$, M2) 
 +160 CALL LIB$WAIT(0.05) 
 +170 T = T + 0.125 
 +180 I = I + 0.001 
 +190 IF I < 0.97 GOTO 60 
 +200 GOTO 40</code> 
 + 
 +**TRS-80 (Tested on a MDL3)** 
 + 
 +<code>5 D$="................................................................" 
 +90 W=63 
 +100 W=W/2:H=W-1 
 +110 T=T+.125 
 +120 I=I+.001 
 +121 A=INT(W+H*SIN(T)) 
 +130 B=INT(W+H*COS(T*I)) 
 +140 IF A<B THEN L=A:R=B 
 +150 IF A>B THEN L=B:R=A 
 +155 IF A=B THEN PRINT TAB(L);"*":GOTO 240 
 +156 M=INT((L+R)/2) 
 +160 M=M-L 
 +180 R=R-(M+L) 
 +185 IF M=0 THEN PRINT TAB(L);"*";LEFT$(D$,R):GOTO 240 
 +190 PRINT TAB(L);LEFT$(D$,M);"*";LEFT$(D$,R) 
 +240 IF I<.9690001 THEN 110 
 +270 I=0:T=0:GOTO 110</code>
  
-<code>1 A=39+39*SIN(T):B=39+39*COS(T*I):IF A>B SWAP A,B:?TAB(A)STRING$(B-A,46)"*":T=T+.1:I=I+.001:GOTO 1</code> 
  
  
  
jbev_sin.1779896841.txt.gz · Last modified: by admin