5 PRINT "MATRICIAL" 10 INPUT "BORRAR S/N";A$:IF A$="N" THEN 110 11 INPUT "METALICA S/N";B$:IF B$="S" THEN E=.21 15 ERASE B,C,S,D,P 20 INPUT "N.BARRAS";B:DIM B(B,7),C(3,3),S(3,3) 40 FOR J=1 TO B 50 PRINT "BARRA";J:IF B$="N" THEN INPUT "E EN KG/CM2";E:E=E/1E+07 60 INPUT "AREA en cm2";A,"I en cm4";I,"L en m.";L,"Nx";B(J,6),"Ny";B(J,7) 70 INPUT "EE 1,EA 2,AE 3,AA 4";B(J,5):B(J,1)=E*A/L*10000 :T=B(J,5) 80 IF T=1 THEN B(J,2)=12*E*I/L^3:B(J,3)=B(J,2)*L/2:B(J,4)=B(J,3)*L/1.5:GOTO 100 90 IF T<4 THEN B(J,4)=3*E*I/L:B(J,3)=B(J,4)/L:B(J,2)=B(J,3)/L 95 IF T=4 THEN B(J,2)=0:B(J,3)=0:B(J,4)=0 100 NEXT J 110 INPUT "M. Barra 1,Suma 2,Producto 3";M:IF M>1 THEN 170 120 INPUT "II 1,JJ 2,IJ 3,JI 4";C,"Barra";I 130 GOSUB 1000 140 ON C GOTO 141,142,143,144 141 PRINT "K(I,I) de la Barra";I:GOSUB 3000:GOTO 150 142 PRINT "K(J,J) de la Barra";I:GOSUB 3000:GOTO 150 143 PRINT "K(I,J) de la Barra";I:GOSUB 3000:GOTO 150 144 PRINT "K(J,I) de la Barra";I:GOSUB 3000:GOTO 150 150 GOSUB 800 155 IF M=2 THEN 200 156 IF M=3 THEN 330 160 GOTO 110 170 IF M=3 THEN 260 180 PRINT "SUMA":INPUT"N.Sumandos";S:ERASE S:DIM S(3,3) 190 FOR K=1 TO S:PRINT "MATRIZ";K:GOTO 120 200 FOR I=1 TO 3:FOR J=1 TO 3:S(I,J)=S(I,J)+C(I,J):NEXT J:NEXT I 210 NEXT K 220 PRINT "La suma es":GOSUB 3000 230 FOR K=1 TO 3:FOR L=1 TO 3 235 PRINT "S(";K;",";L;")=";S(K,L) 240 NEXT L:GOSUB 3000:NEXT K 250 INPUT "Otra suma S/N";A$:IF A$="S" THEN 180 ELSE 110 260 PRINT "PRODUCTO":INPUT "METER DESPLAZAMIENTOS S/N";A$:IF A$="N" THEN 320 270 INPUT "N. Nudos moviles";Q:ERASE D,P:DIM D(3,Q),P(3) 280 FOR K=1 TO Q 290 PRINT "dx";K;:INPUT D(1,K) 295 PRINT "dy";K;:INPUT D(2,K) 300 PRINT "Giro";K:INPUT D(3,K) 310 NEXT K 320 GOTO 120 330 INPUT "* Desplaz.del nudo";T:ERASE P:DIM P(3) 340 FOR K=1 TO 3:FOR J=1 TO 3 350 P(K)=P(K)+C(K,J)*D(J,T) 360 NEXT J:NEXT K 370 PRINT "El producto es":GOSUB 3000 380 FOR K=1 TO 3:PRINT "P(";K;")";P(K):NEXT K 390 INPUT "Otro producto S/N";A$: IF A$="S" THEN M=3:GOTO 120 400 END 800 FOR Z=1 TO 3:FOR W=1 TO 3:PRINT "A(";Z;",";W;")=";C(Z,W):NEXT W:GOSUB 3000:NEXT Z 810 RETURN 1000 W=B(I,5):IF C<3 THEN B1=B(I,1):B2=B(I,2):B5=B(I,4):GOTO 1120 1010 B1=-B(I,1):B2=-B(I,2):B5=B(I,4)/2 1120 ON C GOTO 1130,1140,1150,1160 1130 B3=B(I,3):B4=B(I,3) 1131 IF W=3 THEN B3=0:B4=0:B5=0 1132 GOTO 1170 1140 B3=-B(I,3):B4=-B(I,3) 1141 IF W=2 THEN B3=0:B4=0:B5=0 1142 GOTO 1170 1150 B3=B(I,3):B4=-B(I,3):B5=B(I,4)/2 1151 IF W=2 THEN B3=0:B5=0:GOTO 1170 1152 IF W=3 THEN B4=0:B5=0 1153 GOTO 1170 1160 B3=-B(I,3):B4=B(I,3):B5=B(I,4)/2 1161 IF W=2 THEN B4=0:B5=0:GOTO 1170 1162 IF W=3 THEN B3=0:B5=0 1170 X=B(I,6):Y=B(I,7):C(1,1)=B1*X*X+B2*Y*Y:C(2,2)=B1*Y*Y+B2*X*X 1180 C(1,2)=(B1-B2)*X*Y:C(2,1)=C(1,2):C(1,3)=-B3*Y:C(3,1)=-B4*Y 1190 C(2,3)=B3*X:C(3,2)=B4*X:C(3,3)=B5 1200 RETURN 3000 A$=INKEY$:IF A$="" THEN 3000 3010 RETURN