10 CLS:PRINT "Torsion en seccion rectangular  (barras longitudinales+cercos)":a$=CHR$(13):DIMs(3),b$(3):RESTORE:FORf=0TO3:s(f)=10+5*f:READb$(f):NEXTf:DATA simples,dobles,triples,cuadruples
30 CLS:INPUT "fck[T/m]("+STR$(fck)+")";fck,"fyk[T/m]("+STR$(fyk)+")";fyk,"c("+STR$(gc)+")";gc,"s("+STR$(gs)+")";gs
40 fn=1500+.025*(fyk-41E3):SETf3:PRINT"fck,min";fn:SETn:IF fck<fn THEN 30
50 INPUT "b[cm]("+STR$(b)+")";b,"h[cm]("+STR$(h)+")";h,"c0[cm]("+STR$(hp)+")";hp,"recubrimiento[cm]("+STR$(re)+")";re:hp2=2*hp
60 INPUT" cercos[mm]("+STR$(fit)+")";fit," barras[mm]("+STR$(fil)+")";fil,"Td[mT]("+STR$(td)+")";td:ft2=fit^2:fl2=fil^2
70 fcd=fck/gc:fyd=fyk/gs:ftd=fyd:IF ftd>42E3 THEN ftd=42E3
80 a=b:IF a>h THEN a=h
90 t=a/6:IF hp>a/12 THEN t=(a-hp2)/5
100 ae=(b-t)*(h-t):u=2*(b+h-t-t):IF hp>a/12 THEN ae=(b-hp2)*(h-hp2):u=2*(b+h-2*hp2)
110 fx=.36*fcd:IF fx>900 THEN fx=900
115 SETf2:PRINT "Ae=";ae;"cm";a$;"he=";t;"cm","u=";u:SETn
120 tu1=fx*ae*t*1E-6:IF td>tu1 THEN PRINT "dimensiones insuficientes";a$;"de la seccion":GOTO 50
130 a90=td/ae/ftd*5E7:SETf3:PRINT "Tu1=";tu1;"mT";a$;"A90min=";a90;"cm/m":SETn
140 r=2
150 ut=PI*ft2*ftd*2.5E-7:s=r*ae/td*ut*.01:SETf3:PRINT "Debe ser W/s=";td*5E7/ae/ftd;"cm/m";a$;"Pruebo con cercos ";b$(r/2-1),"separacion:";s;a$;"Ut=";ut:SETn
160 sep1=.85*(a-re):sep=30:IF sep1<sep THEN sep=sep1
170 c$="":IF s>sep THEN s=sep:c$="por minimos,"
180 IF s<10 THEN PRINT "no vale":CLS:r=r+2:GOTO150
185 IF s<30 THEN s=s(INT(s/5)-2):PRINT c$;"separacion:";s;"cm"
190 ar=PI*ft2*.125*r/s:u1=td*u*50/ae:ar1=u1/fyd*1E4:a1=ar1:SETf3:PRINT"U1=";u1;a$;"Along,min=";ar1:SETn
200 n=2*(INT((b-hp2-.01)/30)+INT((h-hp2-.01)/30))+4:ar1m=PI*fl2*n*.0025:IF ar1m>ar1 THEN ar1=ar1m
215 SETf3:PRINT "As1,min=";ar1m:SETn
220 n=INT(ar1/fl2/PI*400-.01)+1:n=n+n MOD2
230 k=fil*.1+2:nlim=2*INT(b+h-2*hp2-k-k-8)/k-4
240 IFn>nlim THENPRINT "No es valido este  long.":GOTO60
250 SETf3:l=n*PI*fl2*.0025:PRINT "Resultados:","A.transversal:A90=";ar;"cm/m";a$;"cercos ";b$(r/2-1);" sep=";STR$(s),"Armadura longitudinal:";STR$(n);"";a$;"As,nec:";a1;" As,real:";l,"Comprobar Vd/Vu1+Td/Tu11";a$;"siendo Td/Tu1=";td/tu1:SETn:GOTO60
