%%HP: T(1)A(D)F(.);
DIR
  CALC
    DIR
      T.DES
         3 FIX
           STR +
"KN.m" +
           'R.'
STO
"TRANSV.DESL.LAJE"
{ { "A="
"DIST. TRANSV.  M"
0 } { "VC="
"VAO CENTRAL (EIXO-EIXO)"
0 } { "LX="
"LX BALANCO = BAL+BW/2-BARREIRA"
0 } { "ACO="
"CA.50  CA.60" 0 }
{ "FCK="
"FCK EM MPA" 0 } {
"%=" "M=.....*M"
0 } { "MG="
"MG  KN.M/M" 0 }
{ "MQ+="
"MQ+  KN.M/M" 0 }
{ "MQ-="
"MQ-  KN.M/M" 0 }
{ "HT="
"ALTURA TRANSV.  M"
0 } { "BW="
"LARGURA TRANSV.  M"
0 } } { 3 3 } { } {
} INFORM DROP { A
VC LX ACO FCK Mm
Mg MqM Mqm HT BW
} STO CLLCD '1.4-
.007*2*LX' NUM ''
STO
"TRANSV. LIG. A LAJE:"
1 DISP "M''=" Mm
STR + "*M" + 3
DISP
"CARGAS PERMANENTES:"
5 DISP "Mg=" Mg
R. 7 DISP 0 WAIT
CLLCD
"C.MVEISbal.carreg.
em KN.m/m:"
1 DISP
"veculo+multido:"
4 DISP "Mq-(esq)="
Mqm STR + 5 DISP
"multido:" 6 DISP
"Mq-(dir)=" 5  *
LX 2 ^ * 2 / NEG
'ss' STO ss STR +
7 DISP 0 WAIT '1.4-
.007*VC' NUM ''
STO CLLCD
"C.MVlj.centr.carr.
em KN.m/m:"
1 DISP
"veculo+multido:"
4 DISP "Mq+(esq)="
MqM STR + 5 DISP
"multido:" 6 DISP
"Mq+(dir)="  5 *
VC 2 ^ * 12 / 'rr'
STO rr STR + 7
DISP 0 WAIT A  /
Mm * 'Tl' STO CLLCD
"ESFOROS NA TRANSV.:"
1 DISP "MT,g=" Tl
Mg 2 * * 'gG' STO
gG R. 3 DISP
"MT,q+=" Tl MqM rr
+ * 'tq' STO tq R.
5 DISP "MT,q-=" Tl
Mqm ss + * 'tg'
STO tg R. 7 DISP 0
WAIT CLLCD "Mmx="
gG tq + R. 1 DISP
"Mmin=" gG tg + R.
3 DISP "Md+=" '1*gG
+1.5*tq' NUM 'MM'
STO MM R. 5 DISP
"Md-=" '1.35*gG+1.5
*tg' NUM 'Mm.' STO
Mm. R. 7 DISP 0
WAIT MM 2 ^  Mm. 2
^  2 LIST SORT 2
GET 'MM' STO '1.5*
MM/VC' NUM 'Vd'
STO CLLCD
"CORTANTE:" 1 DISP
"Vd=" Vd STR +
"KN" + 3 DISP
"Tomar Vd e Vmx=Vmn=0
e aplicar no programa
    CISALHAMENTO"
5 DISP 0 WAIT CLLCD
"Voc possui o progra-
ma VIGA T ?:
1SIM  2NO"
"" INPUT OBJ 'PR'
STO
          IF PR 1
==
          THEN
CLLCD
" Use o programa VG.T
resultados+detalhados!"
3 DISP 0 WAIT CLLCD
"CLEAR SYSTEM..." 1
DISP PurGE CLEAR
          ELSE
DIMENSIO
          END
PONTES 0 MENU
        
      PurGE
         { PR Vd
Mm. MM As z S. C
SD KZ KX Kmd d Md
K. Gg FYK w. M2 M1
FD yd tg tq gG Tl
rr ss  BW HT Mqm
MqM Mg Mm FCK ACO
LX VC A R. } PURGE
CLEAR
        
      CST { T.DES
PurGE }
    END
  T.DES
     3 FIX
       STR +
"KN.m" +
       'R.' STO
"TRANSV.DESL.LAJE"
{ { "A="
"DIST. TRANSV.  M"
0 } { "VC="
"VAO CENTRAL (EIXO-EIXO)"
0 } { "LX="
"LX BALANCO = BAL+BW/2-BARREIRA"
0 } { "ACO="
"CA.50  CA.60" 0 }
{ "FCK="
"FCK EM MPA" 0 } {
"%=" "M=.....*M"
0 } { "MG="
"MG  KN.M/M" 0 }
{ "MQ+="
"MQ+  KN.M/M" 0 }
{ "MQ-="
"MQ-  KN.M/M" 0 }
{ "HT="
"ALTURA TRANSV.  M"
0 } { "BW="
"LARGURA TRANSV.  M"
0 } } { 3 3 } { } {
} INFORM DROP { A
VC LX ACO FCK Mm
Mg MqM Mqm HT BW
} STO CLLCD '1.4-
.007*2*LX' NUM ''
STO
"TRANSV. LIG. A LAJE:"
1 DISP "M''=" Mm
STR + "*M" + 3
DISP
"CARGAS PERMANENTES:"
5 DISP "Mg=" Mg
R. 7 DISP 0 WAIT
CLLCD
"C.MVEISbal.carreg.
em KN.m/m:"
1 DISP
"veculo+multido:"
4 DISP "Mq-(esq)="
Mqm STR + 5 DISP
"multido:" 6 DISP
"Mq-(dir)=" 5  *
LX 2 ^ * 2 / NEG
'ss' STO ss STR +
7 DISP 0 WAIT '1.4-
.007*VC' NUM ''
STO CLLCD
"C.MVlj.centr.carr.
em KN.m/m:"
1 DISP
"veculo+multido:"
4 DISP "Mq+(esq)="
MqM STR + 5 DISP
"multido:" 6 DISP
"Mq+(dir)="  5 *
VC 2 ^ * 12 / 'rr'
STO rr STR + 7
DISP 0 WAIT A  /
Mm * 'Tl' STO CLLCD
"ESFOROS NA TRANSV.:"
1 DISP "MT,g=" Tl
Mg 2 * * 'gG' STO
gG R. 3 DISP
"MT,q+=" Tl MqM rr
+ * 'tq' STO tq R.
5 DISP "MT,q-=" Tl
Mqm ss + * 'tg'
STO tg R. 7 DISP 0
WAIT CLLCD "Mmx="
gG tq + R. 1 DISP
"Mmin=" gG tg + R.
3 DISP "Md+=" '1*gG
+1.5*tq' NUM 'MM'
STO MM R. 5 DISP
"Md-=" '1.35*gG+1.5
*tg' NUM 'Mm.' STO
Mm. R. 7 DISP 0
WAIT MM 2 ^  Mm. 2
^  2 LIST SORT 2
GET 'MM' STO '1.5*
MM/VC' NUM 'Vd'
STO CLLCD
"CORTANTE:" 1 DISP
"Vd=" Vd STR +
"KN" + 3 DISP
"Tomar Vd e Vmx=Vmn=0
e aplicar no programa
    CISALHAMENTO"
5 DISP 0 WAIT CLLCD
"Voc possui o progra-
ma VIGA T ?:
1SIM  2NO"
"" INPUT OBJ 'PR'
STO
      IF PR 1 ==
      THEN CLLCD
" Use o programa VG.T
resultados+detalhados!"
3 DISP 0 WAIT CLLCD
"CLEAR SYSTEM..." 1
DISP PurGE CLEAR
      ELSE DIMENSIO
      END
    
  PurGE
     { As z S. C
SD KZ KX Kmd d Md
K. Gg FYK w. M2 M1
FD yd tg tq gG Tl
rr ss  BW HT Mqm
MqM Mg Mm FCK ACO
LX VC A R. } PURGE
CLEAR
    
  BARRAS
     STD
"QUANTIDADE E BITOLA"
As .32 / CEIL STR
" _6,3mm" + As .5
/ CEIL STR
" _8mm" + As .8 /
CEIL STR " _10mm"
+ As 1.25 / CEIL
STR " _12,5mm" +
As 2 / CEIL STR
" _16mm" + As 3.15
/ CEIL STR
" _20mm" + As 4.91
/ CEIL STR
" _25mm" + 7 LIST
0 CLLCD CHOOSE
CLEAR 3 FIX
    
  FADI
     "FADIGA" { {
"FADIGA="
"INCLUIR FADIGA SIM1 NAO2"
0 } { "M.MAX="
"M.MAX (> MODULO) C/SINALKN.M/M"
0 } { "M.MIN="
"M.MIN (< MODULO) C/SINALKN.M/M"
0 } { "COEF.="
"COEFIC. P/ CALCULO DE K"
0 } } { 1 4 } { } 1
M1 M2 310 4 LIST
INFORM DROP { FD M1
M2 w. } STO ACO 10
* 'FYK' STO
      IF FD 1 ==
      THEN M1 M2 *
'Gg' STO
        IF Gg 0 >
        THEN 1 M2
M1 / - FYK * w. /
'K.' STO
        ELSE 1 M2
M1 2 * / - FYK * w.
/ 'K.' STO
        END
      ELSE 1 'K.'
STO
"  SEM FADIGA !"
MSGBOX
      END CLEAR
    
  DOMI
    
      CASE C 0 ==
S. 10 == AND
        THEN
" RETA LIM. DOM. 1 e 2"
A.
        END C 0 < C
-3.5 > AND S. 10 ==
AND
        THEN
"   DOMNIO 2"
MSGBOX
        END C 0 > C
10 < AND S. 10 ==
AND
        THEN
"   DOMNIO 1"
MSGBOX
        END C 10 ==
S. 10 == AND
        THEN
"    RETA a" MSGBOX
        END C -3.5
> C -2 < AND S. 0 <
S. -2 > AND AND
        THEN
"   DOMNIO 5"
MSGBOX
        END C -2 ==
S. -2 == AND
        THEN
"    RETA b" MSGBOX
        END S. 10
== C -3.5 == AND
        THEN
" RETA LIM. DOM. 2 e 3"
A.
        END S. 10 <
S. yd > AND C -3.5
== AND
        THEN
"   DOMNIO 3"
MSGBOX
        END S. yd
== C -3.5 == AND
        THEN
" RETA LIM. DOM. 3 e 4"
A.
        END S. yd
< S. 0 > AND C -3.5
== AND
        THEN
"   DOMNIO 4"
MSGBOX
        END S. 0 ==
C -3.5 == AND
        THEN
"RETA LIM. DOM. 4 e 4a
ou 4a e 5  verificar"
A.
        END
" DOMNIO INEXISTENTE
 consulte o diagrama
e refaa os clculos !"
A.
      END CLEAR
    
  DIMENSIO
     3 FIX
      IF ACO 50 ==
      THEN 4.07
'yd' STO
      ELSE 4.47
'yd' STO
      END
      DO FADI
"DIGITE Md+ ou Md- :"
"" INPUT OBJ 'Md'
STO .95 HT * 'd'
STO Md 2 ^  1000 /
d 2 ^ FCK 1.5 / *
BW * / 'Kmd' STO
CLLCD "Kmd=" Kmd
STR + 1 DISP
"Arredonde Kmd e entre
na tab.parab.retang."
3 DISP 0 WAIT
"TABELA PARAB. RETANGULAR"
{ { "KX=" } { "KZ="
} { "SD=" } {
"C="
"VALOR TABELADO VEZES MIL"
} { "S="
"VALOR TABELADO VEZES MIL"
} } { 2 5 } { } { }
INFORM DROP { KX KZ
SD C S. } STO DOMI
KZ d * 'z' STO Md 2
^  10 * z SD * /
'As' STO CLLCD
"RESULTADOS:" 1
DISP "As=" As STR
+ "cm" + 3 DISP
"K=" K. STR + 5
DISP "K.As=" K. As
* 'As' STO As STR
+ "cm" + 7 DISP 0
WAIT BARRAS "OPCAO"
{ "NEXT DIMEN ?" }
1 CLLCD CHOOSE
      UNTIL 0 ==
      END CLLCD
"CLEAR SYSTEM..." 1
DISP PurGE STD
    
END
