Mark Wickens

5 ONERRORGOTO900
20 MODE8:DIM:r=0:s=0:h=0:c$=CHR$(5)
30 CLS:PRINT"πh(r²+rR+R²)/3      r:R:radius";
40 s$="r":z=r:GOSUB500:r=z
41 s$="R":z=s:GOSUB500:s=z
42 CLS:PRINT"πh(r²+rR+R²)/3      h:height";
43 s$="h":z=h:GOSUB500:h=z
50 LOCATE0,1:PRINTc$;"Volume =";PI*h*(s^2+s*r+r^2)/3;:z$=INPUT$(1,@):GOTO30
500 LOCATE0,1:PRINTc$;s$;"=";z;"?";:INPUT@42;z:LOCATE0,0:IFz<0 THEN500 ELSERETURN
900 IFERR=1 THENCLS:ONERRORGOTO0
910 IFERL=500 THENRESUME500
930 LOCATE0,1:PRINTc$;"not found";:z$=INPUT$(1,@):RESUME30