Mark Wickens

5 ONERRORGOTO900
20 MODE8:DIM:r=0:h=0:c$=CHR$(5)
30 CLS:PRINT"2πrh+2πr²    r:radius  h:height";
40 s$="r":z=r:GOSUB500:r=z
50 s$="h":z=h:GOSUB500:h=z
70 LOCATE0,1:PRINTc$;"Surface =";2*PI*r*(r+h);:z$=INPUT$(1,@):GOTO40
500 LOCATE0,1:PRINTc$;s$;"=";z;"?";:INPUT@42;z:LOCATE0,0:IFz<0 THEN500 ELSERETURN
900 IFERR=1 THENCLS:ONERRORGOTO0
910 IFERL=500 THENRESUME500
920 LOCATE0,1:PRINTc$;"not found";:z$=INPUT$(1,@):RESUME30