Files
tsvm/assets/disk0/home/basic/sinc2.bas

10 lines
338 B
QBasic

1 ZEROLINE=10
2 AMP=20
10 DEFUN SINC(P)=IF P==0 THEN 1.0 ELSE SIN(P)/P
20 DEFUN TOCHAR(P,X)=IF (X==ROUND(ZEROLINE+P*AMP)) THEN "@" ELSE IF (X==ZEROLINE) THEN "|" ELSE CHR(250)
30 DEFUN SCONCAT(ACC,S)=ACC+S
40 DEFUN PLOTLINE(F,X)=FOLD(SCONCAT,"",MAP(TOCHAR~<F(X),1 TO ZEROLINE+AMP))
100 FOR I=-40 TO 40
110 PRINT PLOTLINE(SINC,I)
120 NEXT