Вы находитесь на странице: 1из 81

Inicio(Gr);PGrafico(Gr);Menu1(MyWait,MyMouse,LastWait,Gr);Grafico();TACTIL();

PULSA();Calculos1();Calculos2();Datos();Ayuda();
T1;T2;T3;T4;T5;T6;dis;MRES;AAA;BBB;ITE;SUMA;TUB1;C1;C2;C3;C4;C5;C6;abd
;abd1;aa;bb;aaa;aq;Met;Menu:=1;GA=G7;graf;TACTIL1();
Buscar1();sallll:=0;
EXPORT Ma;
EXPORT MRESP;
EXPORT HardyCross()
BEGIN
DIMGROB_P(G7,320,240);
RECT(G7);

DIMGROB_P(G5,320,240);
RECT_P(G5,RGB(215,215,215));

Inicio(GA);
PGrafico(GA);
END;

Inicio(Gr)
BEGIN
DIMGROB_P(Gr,320,220);
RECT_P(Gr,#FFFFFFh);
FOR I FROM 1 TO 14 DO
FILLPOLY_P(Gr,{0,0,320,0,320,0+40*I,0,0+20*I},#0174DFh,15);
END;
TEXTOUT_P(" UNIVERSIDAD NACIONAL ",Gr,0,50,3,RGB(28,42,64));
TEXTOUT_P(" DE SAN CRISTOBAL DE HUAMANGA
",Gr,0,80,3,RGB(28,42,64));
TEXTOUT_P(" INGENIERIA CIVIL ",Gr,0,130,4,RGB(251,148,45));
TEXTOUT_P(" METODO DE HARDY CROSS ",Gr,0,170,2,RGB(208,48,222));
LINE_P(Gr,0,219,320,219,RGB(255,255,255));
DRAWMENU("INICIO","DATOS","CIRCUITOS","CORECCIONES","RESULTAD
O","AYUDA");
INVERT_P(0,219,320,240);
BLIT_P(G0,Gr,0,0,320,220);
END;

PGrafico(Gr)
BEGIN
local MyWait,LastWait,MyMouse,LastMouse,MyKey,LastKey,TeclaEsc;
REPEAT
BLIT_P(G0,Gr,0,0,320,240);
IF type(MyWait)==6 then
LastWait:=MyWait;
END;
IF type(MyMouse)==6 then
LastMouse:=MyMouse;
END;
MyWait:=BR(WAIT(1));
MyMouse:=BR(MOUSE());
IF(type(MyWait)==0)then
TeclaEsc:=MyWait;
END;
IF(type(MyWait)==6)THEN
CASE
IF(MyWait(1)==3)then
CASE
IF Menu==1 THEN
Menu1(MyWait,MyMouse,LastWait,Gr);
END;
END;
END;
END;
END;
UNTIL TeclaEsc==4;
END;

Menu1(MyWait,MyMouse,LastWait,Gr)
BEGIN
IF(MyWait(3)>=213 and MyWait(3)<=239)THEN
CASE
IF(0 <=MyWait(2)<=51)THEN
INPUT({{Met,{"HAZEN & WILLIAMS","DARCY &
WEISBACH"},{40,50,1}},{C,[0],{60,15,2}},{T,[0],{60,15,4}}},
"Hardy Cross",
{"METODO: ","N de circuitos =","N de Tuberias ="},
{"ELIJA EL METODO A UTILIZAR","INGRESE NUMERO DE
CIRCUITOS","INGRESE EL NUMERO DE TUERIAS"});
Ma:=MAKEMAT(0,T,5);
FOR I FROM 1 TO T DO
Ma(I,1):=I;
END;
DRAWMENU("INICIO","DATOS","CIRCUITOS","CORECCIONES","RESULTAD
O","AYUDA");INVERT_P(0,219,320,240);
END;
IF(53 <=MyWait(2)<=104)THEN
IF Met==1 THEN
Ma:=EDITMAT(Ma,{"DATOS DE
TUBERIAS",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
AAA:=0;
END;
IF Met==2 THEN
Ma:=EDITMAT(Ma,{"DATOS DE
TUBERIAS",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","Friccion ","Qo"," "}});
AAA:=0;
END;
DRAWMENU("INICIO","DATOS","CIRCUITOS","CORECCIONES","RESULTAD
O","AYUDA");INVERT_P(0,219,320,240);
END;
IF(106 <=MyWait(2)<=157)THEN
Datos();
DRAWMENU("INICIO","DATOS","CIRCUITOS","CORECCIONES","RESULTAD
O","AYUDA");INVERT_P(0,219,320,240);
END;
IF(159 <=MyWait(2)<=210)THEN
IF Met==1 THEN
Calculos1();
END;
IF Met==2 THEN
Calculos2();
END;
DRAWMENU("INICIO","DATOS","CIRCUITOS","CORECCIONES","RESULTAD
O","AYUDA");INVERT_P(0,219,320,240);
END;
IF(212 <=MyWait(2)<=263)THEN
graf:=1;
sallll:=0;
Grafico();
DRAWMENU("INICIO","DATOS","CIRCUITOS","CORECCIONES","RESULTAD
O","AYUDA");INVERT_P(0,219,320,240);
END;
IF(265 <=MyWait(2)<=319) THEN
Ayuda();
DRAWMENU("INICIO","DATOS","CIRCUITOS","CORECCIONES","RESULTAD
O","AYUDA");INVERT_P(0,219,320,240);
END;
END;
ELSE
IF(size(MyMouse(1))==0)and(size(MyMouse(2))==0)and(LastWait(1)==2)and(size(La
stWait)==1)then
END;
END;
END;

Ayuda()
BEGIN
DIMGROB_P(G5,320,240);
RECT_P(G5,RGB(215,215,215));
BLIT_P(G0,G5);
TEXTOUT_P(" INICIO",G5,30,5,1,RGB(248,12,255));
TEXTOUT_P(" Ingrese el Mtodo a utilizar.",G5,5,15,1,RGB(29,106,180));
TEXTOUT_P(" Ingrese el nmero de circuitos y tuberias en el
sistema.",G5,5,25,1,RGB(29,106,180));
TEXTOUT_P(" DATOS",G5,30,45,1,RGB(248,12,255));
TEXTOUT_P(" Ingrese todos los datos correspondientes a las tuberias de
",G5,5,55,1,RGB(29,106,180));
TEXTOUT_P(" acuerdo al numero que se le haya asignado a cada
una.",G5,5,65,1,RGB(29,106,180));
TEXTOUT_P(" CIRCUITOS",G5,30,85,1,RGB(248,12,255));
TEXTOUT_P(" Ingrese todos las tuerias que pertenecen a cada circuito
dentro",G5,5,95,1,RGB(29,106,180));
TEXTOUT_P(" de corchetes y separado por comas ejm: CIRUITO I
{1,2,3,5}.",G5,5,105,1,RGB(29,106,180));
TEXTOUT_P(" CORRECCIONES",G5,30,125,1,RGB(248,12,255));
TEXTOUT_P(" Corrija solamente el signo del Caudal inicial en cada
circuito",G5,5,135,1,RGB(29,106,180));
TEXTOUT_P(" independientementeen, la cual aparece en la columna
5.",G5,5,145,1,RGB(29,106,180));
TEXTOUT_P(" S. Horario (+) S. Antihorario (-)",G5,5,155,1,RGB(29,106,180));
TEXTOUT_P(" RESULTADO",G5,30,175,1,RGB(248,12,255));
TEXTOUT_P(" Se puede visualizar todas las iteraciones
realizadas.",G5,5,185,1,RGB(29,106,180));
TEXTOUT_P(" Se puede desplazar en la pantalla haciendo uso del las teclas
",G5,5,195,1,RGB(29,106,180));
TEXTOUT_P(" fisicas de posicion o mediante toques en la pantalla en la
parte",G5,5,205,1,RGB(29,106,180));
TEXTOUT_P(" superior, inferior y los laterales",G5,5,215,1,RGB(29,106,180));
BLIT_P(G0,G5);
REPEAT
UNTIL ISKEYDOWN(4);
END;

Datos()
BEGIN
CASE
IF C==1 THEN
INPUT({{T1,[6],{30,60,2}}},"TUERIAS",{"CIRCUITO I ="},{"INGRESE LAS
TUBERIAS Q PERTENECEN A ESTE CIRCUITO"});
END;
IF C==2 THEN
INPUT({{T1,[6],{30,60,1}},{T2,[6],{30,60,2}}},"TUBERIAS",{"CIRCUITO I
=","CIRCUITO II ="},{"INGRESE LAS TUBERIAS Q PERTENECEN A ESTE
CIRCUITO"},{"INGRESE LAS TUBERIAS Q PERTENECEN A ESTE
CIRCUITO"});
END;
IF C==3 THEN //------------------------------------------------------------------------------------
------------------------------------------------
INPUT({{T1,[6],{30,60,1}},{T2,[6],{30,60,2}},{T3,[6],{30,60,3}}},
"TUBERIAS",
{"CIRCUITO I =","CIRCUITO II =","CIRCUITO III ="},
{"INGRESE LAS TUBERIAS Q PERTENECEN A ESTE CIRCUITO","INGRESE
LAS TUBERIAS Q PERTENECEN A ESTE CIRCUITO","INGRESE LAS
TUBERIAS Q PERTENECEN A ESTE CIRCUITO"});
END;
IF C==4 THEN
INPUT({{T1,[6],{30,60,1}},{T2,[6],{30,60,2}},{T3,[6],{30,60,3}},{T4,[6],{30,60,4}}
},
"TUBERIAS",
{"CIRCUITO I =","CIRCUITO II =","CIRCUITO III =","CIRCUITO VI ="},
{"INGRESE LAS TUBERIAS Q PERTENECEN A ESTE CIRCUITO","INGRESE
LAS TUBERIAS Q PERTENECEN A ESTE CIRCUITO","INGRESE LAS
TUBERIAS Q PERTENECEN A ESTE CIRCUITO","INGRESE LAS TUBERIAS Q
PERTENECEN A ESTE CIRCUITO"});
END;
IF C==5 THEN
INPUT({{T1,[-1],{30,60,1}},{T2,[-1],{30,60,2}},{T3,[-1],{30,60,3}},{T4,[-
1],{30,60,4}},{T5,[-1],{30,60,5}}},
"TUBERIAS",
{"CIRCUITO I =","CIRCUITO II =","CIRCUITO III =","CIRCUITO IV
=","CIRCUITO V ="},
{"INGRESE LAS TUBERIAS Q PERTENECEN A ESTE CIRCUITO","INGRESE
LAS TUBERIAS Q PERTENECEN A ESTE CIRCUITO","INGRESE LAS
TUBERIAS Q PERTENECEN A ESTE CIRCUITO","INGRESE LAS TUBERIAS Q
PERTENECEN A ESTE CIRCUITO","INGRESE LAS TUBERIAS Q PERTENECEN
A ESTE CIRCUITO"});
END;
IF C==6 THEN
INPUT({{T1,[6],{30,60,0}},{T2,[6],{30,60,1}},{T3,[6],{30,60,2}},{T4,[6],{30,60,3}}
,{T5,[6],{30,60,4}},{T6,[6],{30,60,5}}},
"TUBERIAS",
{"CIRCUITO I =","CIRCUITO II =","CIRCUITO III =","CIRCUITO IV
=","CIRCUITO V =","CIRCUITO VI ="},
{"INGRESE LAS TUBERIAS Q PERTENECEN A ESTE CIRCUITO","INGRESE
LAS TUBERIAS Q PERTENECEN A ESTE CIRCUITO","INGRESE LAS
TUBERIAS Q PERTENECEN A ESTE CIRCUITO","INGRESE LAS TUBERIAS Q
PERTENECEN A ESTE CIRCUITO","INGRESE LAS TUBERIAS Q PERTENECEN
A ESTE CIRCUITO","INGRESE LAS TUBERIAS Q PERTENECEN A ESTE
CIRCUITO"});
END;
END;
END;

Calculos1()
BEGIN

CASE
IF C==1 THEN //------------------------------------------------------------------------------------
------------------------------------------------
C1:=CAS.SIZE(T1);
M1:=MAKEMAT(0,C1,5);
FOR J FROM 1 TO C1 DO
TUB1:=T1(J);
M1(J):=Ma(TUB1);
END;
M1:=EDITMAT(M1,{"CIRCUITO
I",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
dis:=C1+1;
MRES:=MAKEMAT(0,dis,10);
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
MRES(I,1):=M1(I,1);
MRES(I,2):=M1(I,2);
MRES(I,3):=M1(I,3);
MRES(I,4):=M1(I,4);
MRES(I,5):=M1(I,5);
CASE
IF M1(I,5)<0 THEN
M1(I,5):=(-1)*M1(I,5);
MRES(I,6):=-
1745155.28*M1(I,3)*(M1(I,5)^(1.85))/((M1(I,4)^(1.85))*(M1(I,2))^(4.85));
MRES(I,7):=-MRES(I,6)/M1(I,5);
M1(I,5):=(-1)*M1(I,5);
END;
IF M1(I,5)>=0 THEN
MRES(I,6):=1745155.28*M1(I,3)*(M1(I,5)^(1.85))/((M1(I,4)^(1.85))*(M1(I,2))^(4.85)
);
MRES(I,7):=MRES(I,6)/M1(I,5);
END;
END;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(1.85*MRES(C1+1,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;

AAA:=0;
MRESP:={};
REPEAT
SUMA:=0;
FOR I FROM 1 TO T DO
FOR J FROM 1 TO dis DO
aaa:=MRES(J,1);
IF I==aaa THEN
Ma(I,5):=ABS(MRES(J,10));
Ma(I,6):=MRES(J,8)+MRES(J,9);
aq:=0.01*ABS(Ma(I,5));
IF aq>ABS(Ma(I,6)) THEN
Ma(I,7):=1;
MRES(J,12):=1;
END;
END;
END;
END;
AAA:=AAA+1;
FOR I FROM 1 TO dis DO
MRES(I,11):=MRES(I,1);
MRES(I,13):=ABS(ABS(MRES(I,8))+ABS(MRES(I,9)));
MRES(I,14):=0.01*ABS(MRES(I,10));
IF MRES(I,12)==1 THEN
SUMA:=SUMA+1;
END;
END;
MRESP(AAA):=MRES;
IF SUMA<dis-C THEN
FOR I FROM 1 TO dis DO
MRES(I,5):=MRES(I,10);
MRES(I,6):=0;
MRES(I,7):=0;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(I,10):=0;
MRES(I,11):=0;
MRES(I,12):=0;
MRES(I,13):=0;
MRES(I,14):=0;
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
CASE
IF MRES(I,5)<0 THEN
MRES(I,5):=(-1)*MRES(I,5);
MRES(I,6):=-
1745155.28*MRES(I,3)*(MRES(I,5)^(1.85))/((MRES(I,4)^(1.85))*(MRES(I,2))^(4.85)
);
MRES(I,7):=-MRES(I,6)/MRES(I,5);
MRES(I,5):=(-1)*MRES(I,5);
END;
IF MRES(I,5)>=0 THEN
MRES(I,6):=1745155.28*MRES(I,3)*(MRES(I,5)^(1.85))/((MRES(I,4)^(1.85))*(MRE
S(I,2))^(4.85));
MRES(I,7):=MRES(I,6)/MRES(I,5);
END;
END;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(1.85*MRES(C1+1,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
END;
UNTIL SUMA==dis-C;
END;
IF C==2 THEN //------------------------------------------------------------------------------------
------------------------------------------------
C1:=CAS.SIZE(T1);
M1:=MAKEMAT(0,C1,5);
C2:=CAS.SIZE(T2);
M2:=MAKEMAT(0,C2,5);
FOR J FROM 1 TO C1 DO
TUB1:=T1(J);
M1(J):=Ma(TUB1);
END;
M1:=EDITMAT(M1,{"CIRCUITO
I",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C2 DO
TUB1:=T2(J);
M2(J):=Ma(TUB1);
END;
M2:=EDITMAT(M2,{"CIRCUITO
II",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
dis:=C1+C2+2;
MRES:=MAKEMAT(0,dis,10);
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
MRES(I,1):=M1(I,1);
MRES(I,2):=M1(I,2);
MRES(I,3):=M1(I,3);
MRES(I,4):=M1(I,4);
MRES(I,5):=M1(I,5);
CASE
IF M1(I,5)<0 THEN
M1(I,5):=(-1)*M1(I,5);
MRES(I,6):=-
1745155.28*M1(I,3)*(M1(I,5)^(1.85))/((M1(I,4)^(1.85))*(M1(I,2))^(4.85));
MRES(I,7):=-MRES(I,6)/M1(I,5);
M1(I,5):=(-1)*M1(I,5);
END;
IF M1(I,5)>=0 THEN
MRES(I,6):=1745155.28*M1(I,3)*(M1(I,5)^(1.85))/((M1(I,4)^(1.85))*(M1(I,2))^(4.85)
);
MRES(I,7):=MRES(I,6)/M1(I,5);
END;
END;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(1.85*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,1):=M2(I,1);
MRES(I+C1+1,2):=M2(I,2);
MRES(I+C1+1,3):=M2(I,3);
MRES(I+C1+1,4):=M2(I,4);
MRES(I+C1+1,5):=M2(I,5);
CASE
IF M2(I,5)<0 THEN
M2(I,5):=(-1)*M2(I,5);
MRES(I+C1+1,6):=(-
1)*1745155.28*M2(I,3)*(M2(I,5)^(1.85))/((M2(I,4)^(1.85))*(M2(I,2))^(4.85));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/M2(I,5);
M2(I,5):=(-1)*M2(I,5);
END;
IF M2(I,5)>=0 THEN
MRES(I+C1+1,6):=1745155.28*M2(I,3)*(M2(I,5)^(1.85))/((M2(I,4)^(1.85))*(M2(I,2))
^(4.85));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/M2(I,5);
END;
END;
MRES(I+C1+1,8):=0;
MRES(I+C1+1,9):=0;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(1.85*MRES(C2+C1+2,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
AAA:=0;
MRESP:={};
REPEAT
SUMA:=0;
FOR I FROM 1 TO T DO
FOR J FROM 1 TO dis DO
aaa:=MRES(J,1);
IF I==aaa THEN
Ma(I,5):=ABS(MRES(J,10));
Ma(I,6):=MRES(J,8)+MRES(J,9);
aq:=0.01*ABS(Ma(I,5));
IF aq>ABS(Ma(I,6)) THEN
Ma(I,7):=1;
MRES(J,12):=1;
END;END;END;END;
AAA:=AAA+1;
FOR I FROM 1 TO dis DO
MRES(I,11):=MRES(I,1);
MRES(I,13):=ABS(ABS(MRES(I,8))+ABS(MRES(I,9)));
MRES(I,14):=0.01*ABS(MRES(I,10));
IF MRES(I,12)==1 THEN
SUMA:=SUMA+1;
END;
END;
MRESP(AAA):=MRES;
IF SUMA<dis-C THEN
FOR I FROM 1 TO dis DO
MRES(I,5):=MRES(I,10);
MRES(I,6):=0;
MRES(I,7):=0;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(I,10):=0;
MRES(I,11):=0;
MRES(I,12):=0;
MRES(I,13):=0;
MRES(I,14):=0;
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
CASE
IF MRES(I,5)<0 THEN
MRES(I,5):=(-1)*MRES(I,5);
MRES(I,6):=-
1745155.28*MRES(I,3)*(MRES(I,5)^(1.85))/((MRES(I,4)^(1.85))*(MRES(I,2))^(4.85)
);
MRES(I,7):=-MRES(I,6)/MRES(I,5);
MRES(I,5):=(-1)*MRES(I,5);
END;
IF MRES(I,5)>=0 THEN
MRES(I,6):=1745155.28*MRES(I,3)*(MRES(I,5)^(1.85))/((MRES(I,4)^(1.85))*(MRE
S(I,2))^(4.85));
MRES(I,7):=MRES(I,6)/MRES(I,5);
END;
END;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(1.85*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
CASE
IF MRES(I+C1+1,5)<0 THEN
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
MRES(I+C1+1,6):=(-
1)*1745155.28*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(1.85))/((MRES(I+C1+1,4)^(1.8
5))*(MRES(I+C1+1,2))^(4.85));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/MRES(I+C1+1,5);
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
END;
IF MRES(I+C1+1,5)>=0 THEN
MRES(I+C1+1,6):=1745155.28*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(1.85))/((MRE
S(I+C1+1,4)^(1.85))*(MRES(I+C1+1,2))^(4.85));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/MRES(I+C1+1,5);
END;
END;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(1.85*MRES(C2+C1+2,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
END;
UNTIL SUMA==dis-C;
END;
IF C==3 THEN //------------------------------------------------------------------------------------
------------------------------------------------
C1:=CAS.SIZE(T1);M1:=MAKEMAT(0,C1,5);
C2:=CAS.SIZE(T2);M2:=MAKEMAT(0,C2,5);
C3:=CAS.SIZE(T3);M3:=MAKEMAT(0,C3,5);
FOR J FROM 1 TO C1 DO
TUB1:=T1(J);
M1(J):=Ma(TUB1);
END;
M1:=EDITMAT(M1,{"CIRCUITO
I",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C2 DO
TUB1:=T2(J);
M2(J):=Ma(TUB1);
END;
M2:=EDITMAT(M2,{"CIRCUITO
II",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C3 DO
TUB1:=T3(J);
M3(J):=Ma(TUB1);
END;
M3:=EDITMAT(M3,{"CIRCUITO
III",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
dis:=C1+C2+C3+3;
MRES:=MAKEMAT(0,dis,10);
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
MRES(I,1):=M1(I,1);
MRES(I,2):=M1(I,2);
MRES(I,3):=M1(I,3);
MRES(I,4):=M1(I,4);
MRES(I,5):=M1(I,5);
CASE
IF M1(I,5)<0 THEN
M1(I,5):=(-1)*M1(I,5);
MRES(I,6):=-
1745155.28*M1(I,3)*(M1(I,5)^(1.85))/((M1(I,4)^(1.85))*(M1(I,2))^(4.85));
MRES(I,7):=-MRES(I,6)/M1(I,5);
M1(I,5):=(-1)*M1(I,5);
END;
IF M1(I,5)>=0 THEN
MRES(I,6):=1745155.28*M1(I,3)*(M1(I,5)^(1.85))/((M1(I,4)^(1.85))*(M1(I,2))^(4.85)
);
MRES(I,7):=MRES(I,6)/M1(I,5);
END;
END;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(1.85*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,1):=M2(I,1);
MRES(I+C1+1,2):=M2(I,2);
MRES(I+C1+1,3):=M2(I,3);
MRES(I+C1+1,4):=M2(I,4);
MRES(I+C1+1,5):=M2(I,5);
CASE
IF M2(I,5)<0 THEN
M2(I,5):=(-1)*M2(I,5);
MRES(I+C1+1,6):=(-
1)*1745155.28*M2(I,3)*(M2(I,5)^(1.85))/((M2(I,4)^(1.85))*(M2(I,2))^(4.85));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/M2(I,5);
M2(I,5):=(-1)*M2(I,5);
END;
IF M2(I,5)>=0 THEN
MRES(I+C1+1,6):=1745155.28*M2(I,3)*(M2(I,5)^(1.85))/((M2(I,4)^(1.85))*(M2(I,2))
^(4.85));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/M2(I,5);
END;
END;
MRES(I+C1+1,8):=0;
MRES(I+C1+1,9):=0;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(1.85*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,1):=M3(I,1);
MRES(I+C1+C2+2,2):=M3(I,2);
MRES(I+C1+C2+2,3):=M3(I,3);
MRES(I+C1+C2+2,4):=M3(I,4);
MRES(I+C1+C2+2,5):=M3(I,5);
CASE
IF M3(I,5)<0 THEN
M3(I,5):=(-1)*M3(I,5);
MRES(I+C1+C2+2,6):=(-
1)*1745155.28*M3(I,3)*(M3(I,5)^(1.85))/((M3(I,4)^(1.85))*(M3(I,2))^(4.85));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/M3(I,5);
M3(I,5):=(-1)*M3(I,5);
END;
IF M3(I,5)>=0 THEN
MRES(I+C1+C2+2,6):=1745155.28*M3(I,3)*(M3(I,5)^(1.85))/((M3(I,4)^(1.85))*(M3(
I,2))^(4.85));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/M3(I,5);
END;
END;
MRES(I+C1+C2+2,8):=0;
MRES(I+C1+C2+2,9):=0;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(1.85*MRES(C2+C1+C3+3,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
AAA:=0;
MRESP:={};
REPEAT
SUMA:=0;
FOR I FROM 1 TO T DO
FOR J FROM 1 TO dis DO
aaa:=MRES(J,1);
IF I==aaa THEN
Ma(I,5):=ABS(MRES(J,10));
Ma(I,6):=MRES(J,8)+MRES(J,9);
aq:=0.01*ABS(Ma(I,5));
IF aq>ABS(Ma(I,6)) THEN
Ma(I,7):=1;
MRES(J,12):=1;
END;
END;
END;
END;
AAA:=AAA+1;
FOR I FROM 1 TO dis DO
MRES(I,11):=MRES(I,1);
MRES(I,13):=ABS(ABS(MRES(I,8))+ABS(MRES(I,9)));
MRES(I,14):=0.01*ABS(MRES(I,10));
IF MRES(I,12)==1 THEN
SUMA:=SUMA+1;
END;
END;
MRESP(AAA):=MRES;
IF SUMA<dis-C THEN
FOR I FROM 1 TO dis DO
MRES(I,5):=MRES(I,10);
MRES(I,6):=0;
MRES(I,7):=0;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(I,10):=0;
MRES(I,11):=0;
MRES(I,12):=0;
MRES(I,13):=0;
MRES(I,14):=0;
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
CASE
IF MRES(I,5)<0 THEN
MRES(I,5):=(-1)*MRES(I,5);
MRES(I,6):=-
1745155.28*MRES(I,3)*(MRES(I,5)^(1.85))/((MRES(I,4)^(1.85))*(MRES(I,2))^(4.85)
);
MRES(I,7):=-MRES(I,6)/MRES(I,5);
MRES(I,5):=(-1)*MRES(I,5);
END;
IF MRES(I,5)>=0 THEN
MRES(I,6):=1745155.28*MRES(I,3)*(MRES(I,5)^(1.85))/((MRES(I,4)^(1.85))*(MRE
S(I,2))^(4.85));
MRES(I,7):=MRES(I,6)/MRES(I,5);
END;
END;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(1.85*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
CASE
IF MRES(I+C1+1,5)<0 THEN
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
MRES(I+C1+1,6):=(-
1)*1745155.28*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(1.85))/((MRES(I+C1+1,4)^(1.8
5))*(MRES(I+C1+1,2))^(4.85));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/MRES(I+C1+1,5);
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
END;
IF MRES(I+C1+1,5)>=0 THEN
MRES(I+C1+1,6):=1745155.28*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(1.85))/((MRE
S(I+C1+1,4)^(1.85))*(MRES(I+C1+1,2))^(4.85));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/MRES(I+C1+1,5);
END;
END;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(1.85*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
CASE
IF MRES(I+C1+C2+2,5)<0 THEN
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,6):=(-
1)*1745155.28*MRES(I+C1+C2+2,3)*(MRES(I+C1+C2+2,5)^(1.85))/((MRES(I+C1+
C2+2,4)^(1.85))*(MRES(I+C1+C2+2,2))^(4.85));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
END;
IF MRES(I+C1+C2+2,5)>=0 THEN
MRES(I+C1+C2+2,6):=1745155.28*MRES(I+C1+C2+2,3)*(MRES(I+C1+C2+2,5)^(1
.85))/((MRES(I+C1+C2+2,4)^(1.85))*(MRES(I+C1+C2+2,2))^(4.85));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
END;
END;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(1.85*MRES(C2+C1+C3+3,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
END;
UNTIL SUMA==dis-C;
END;
IF C==4 THEN
C1:=CAS.SIZE(T1);
M1:=MAKEMAT(0,C1,5);
C2:=CAS.SIZE(T2);
M2:=MAKEMAT(0,C2,5);
C3:=CAS.SIZE(T3);
M3:=MAKEMAT(0,C3,5);
C4:=CAS.SIZE(T4);
M4:=MAKEMAT(0,C4,5);
FOR J FROM 1 TO C1 DO
TUB1:=T1(J);
M1(J):=Ma(TUB1);
END;
M1:=EDITMAT(M1,{"CIRCUITO
I",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C2 DO
TUB1:=T2(J);
M2(J):=Ma(TUB1);
END;
M2:=EDITMAT(M2,{"CIRCUITO
II",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C3 DO
TUB1:=T3(J);
M3(J):=Ma(TUB1);
END;
M3:=EDITMAT(M3,{"CIRCUITO
III",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C4 DO
TUB1:=T4(J);
M4(J):=Ma(TUB1);
END;
M4:=EDITMAT(M4,{"CIRCUITO
IV",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
dis:=C1+C2+C3+C4+4;
MRES:=MAKEMAT(0,dis,10);
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
MRES(I,1):=M1(I,1);
MRES(I,2):=M1(I,2);
MRES(I,3):=M1(I,3);
MRES(I,4):=M1(I,4);
MRES(I,5):=M1(I,5);
CASE
IF M1(I,5)<0 THEN
M1(I,5):=(-1)*M1(I,5);
MRES(I,6):=-
1745155.28*M1(I,3)*(M1(I,5)^(1.85))/((M1(I,4)^(1.85))*(M1(I,2))^(4.85));
MRES(I,7):=-MRES(I,6)/M1(I,5);
M1(I,5):=(-1)*M1(I,5);
END;
IF M1(I,5)>=0 THEN
MRES(I,6):=1745155.28*M1(I,3)*(M1(I,5)^(1.85))/((M1(I,4)^(1.85))*(M1(I,2))^(4.85)
);
MRES(I,7):=MRES(I,6)/M1(I,5);
END;
END;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(1.85*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,1):=M2(I,1);
MRES(I+C1+1,2):=M2(I,2);
MRES(I+C1+1,3):=M2(I,3);
MRES(I+C1+1,4):=M2(I,4);
MRES(I+C1+1,5):=M2(I,5);
CASE
IF M2(I,5)<0 THEN
M2(I,5):=(-1)*M2(I,5);
MRES(I+C1+1,6):=(-
1)*1745155.28*M2(I,3)*(M2(I,5)^(1.85))/((M2(I,4)^(1.85))*(M2(I,2))^(4.85));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/M2(I,5);
M2(I,5):=(-1)*M2(I,5);
END;
IF M2(I,5)>=0 THEN
MRES(I+C1+1,6):=1745155.28*M2(I,3)*(M2(I,5)^(1.85))/((M2(I,4)^(1.85))*(M2(I,2))
^(4.85));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/M2(I,5);
END;
END;
MRES(I+C1+1,8):=0;
MRES(I+C1+1,9):=0;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(1.85*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,1):=M3(I,1);
MRES(I+C1+C2+2,2):=M3(I,2);
MRES(I+C1+C2+2,3):=M3(I,3);
MRES(I+C1+C2+2,4):=M3(I,4);
MRES(I+C1+C2+2,5):=M3(I,5);
CASE
IF M3(I,5)<0 THEN
M3(I,5):=(-1)*M3(I,5);
MRES(I+C1+C2+2,6):=(-
1)*1745155.28*M3(I,3)*(M3(I,5)^(1.85))/((M3(I,4)^(1.85))*(M3(I,2))^(4.85));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/M3(I,5);
M3(I,5):=(-1)*M3(I,5);
END;
IF M3(I,5)>=0 THEN
MRES(I+C1+C2+2,6):=1745155.28*M3(I,3)*(M3(I,5)^(1.85))/((M3(I,4)^(1.85))*(M3(
I,2))^(4.85));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/M3(I,5);
END;
END;
MRES(I+C1+C2+2,8):=0;
MRES(I+C1+C2+2,9):=0;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(1.85*MRES(C2+C1+C3+3,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,1):=M4(I,1);
MRES(I+C1+C2+C3+3,2):=M4(I,2);
MRES(I+C1+C2+C3+3,3):=M4(I,3);
MRES(I+C1+C2+C3+3,4):=M4(I,4);
MRES(I+C1+C2+C3+3,5):=M4(I,5);
CASE
IF M4(I,5)<0 THEN
M4(I,5):=(-1)*M4(I,5);
MRES(I+C1+C2+C3+3,6):=(-
1)*1745155.28*M4(I,3)*(M4(I,5)^(1.85))/((M4(I,4)^(1.85))*(M4(I,2))^(4.85));
MRES(I+C1+C2+C3+3,7):=-MRES(I+C1+C2+C3+3,6)/M4(I,5);
M4(I,5):=(-1)*M4(I,5);
END;
IF M4(I,5)>=0 THEN
MRES(I+C1+C2+C3+3,6):=1745155.28*M4(I,3)*(M4(I,5)^(1.85))/((M4(I,4)^(1.85))*(
M4(I,2))^(4.85));
MRES(I+C1+C2+C3+3,7):=MRES(I+C1+C2+C3+3,6)/M4(I,5);
END;
END;
MRES(I+C1+C2+C3+3,8):=0;
MRES(I+C1+C2+C3+3,9):=0;
MRES(C2+C1+C3+C4+4,6):=abd+MRES(I+C1+C2+C3+3,6);
abd:=MRES(C2+C1+C3+C4+4,6);
MRES(C2+C1+C3+C4+4,7):=abd1+MRES(I+C1+C2+C3+3,7);
abd1:=MRES(C2+C1+C3+C4+4,7);
END;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,8):=(-
1)*MRES(C2+C1+C3+C4+4,6)/(1.85*MRES(C2+C1+C3+C4+4,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
AAA:=0;
MRESP:={};
REPEAT
SUMA:=0;
FOR I FROM 1 TO T DO
FOR J FROM 1 TO dis DO
aaa:=MRES(J,1);
IF I==aaa THEN
Ma(I,5):=ABS(MRES(J,10));
Ma(I,6):=MRES(J,8)+MRES(J,9);
aq:=0.01*ABS(Ma(I,5));
IF aq>ABS(Ma(I,6)) THEN
Ma(I,7):=1;
MRES(J,12):=1;
END;
END;
END;
END;
AAA:=AAA+1;
FOR I FROM 1 TO dis DO
MRES(I,11):=MRES(I,1);
MRES(I,13):=ABS(ABS(MRES(I,8))+ABS(MRES(I,9)));
MRES(I,14):=0.01*ABS(MRES(I,10));
IF MRES(I,12)==1 THEN
SUMA:=SUMA+1;
END;
END;
MRESP(AAA):=MRES;
IF SUMA<dis-C THEN
FOR I FROM 1 TO dis DO
MRES(I,5):=MRES(I,10);
MRES(I,6):=0;
MRES(I,7):=0;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(I,10):=0;
MRES(I,11):=0;
MRES(I,12):=0;
MRES(I,13):=0;
MRES(I,14):=0;
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
CASE
IF MRES(I,5)<0 THEN
MRES(I,5):=(-1)*MRES(I,5);
MRES(I,6):=-
1745155.28*MRES(I,3)*(MRES(I,5)^(1.85))/((MRES(I,4)^(1.85))*(MRES(I,2))^(4.85)
);
MRES(I,7):=-MRES(I,6)/MRES(I,5);
MRES(I,5):=(-1)*MRES(I,5);
END;
IF MRES(I,5)>=0 THEN
MRES(I,6):=1745155.28*MRES(I,3)*(MRES(I,5)^(1.85))/((MRES(I,4)^(1.85))*(MRE
S(I,2))^(4.85));
MRES(I,7):=MRES(I,6)/MRES(I,5);
END;
END;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(1.85*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
CASE
IF MRES(I+C1+1,5)<0 THEN
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
MRES(I+C1+1,6):=(-
1)*1745155.28*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(1.85))/((MRES(I+C1+1,4)^(1.8
5))*(MRES(I+C1+1,2))^(4.85));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/MRES(I+C1+1,5);
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
END;
IF MRES(I+C1+1,5)>=0 THEN
MRES(I+C1+1,6):=1745155.28*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(1.85))/((MRE
S(I+C1+1,4)^(1.85))*(MRES(I+C1+1,2))^(4.85));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/MRES(I+C1+1,5);
END;
END;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(1.85*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
CASE
IF MRES(I+C1+C2+2,5)<0 THEN
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,6):=(-
1)*1745155.28*MRES(I+C1+C2+2,3)*(MRES(I+C1+C2+2,5)^(1.85))/((MRES(I+C1+
C2+2,4)^(1.85))*(MRES(I+C1+C2+2,2))^(4.85));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
END;
IF MRES(I+C1+C2+2,5)>=0 THEN
MRES(I+C1+C2+2,6):=1745155.28*MRES(I+C1+C2+2,3)*(MRES(I+C1+C2+2,5)^(1
.85))/((MRES(I+C1+C2+2,4)^(1.85))*(MRES(I+C1+C2+2,2))^(4.85));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
END;
END;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(1.85*MRES(C2+C1+C3+3,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C4 DO
CASE
IF MRES(I+C1+C2+C3+3,5)<0 THEN
MRES(I+C1+C2+C3+3,5):=(-1)*MRES(I+C1+C2+C3+3,5);
MRES(I+C1+C2+C3+3,6):=(-
1)*1745155.28*MRES(I+C1+C2+C3+3,3)*(MRES(I+C1+C2+C3+3,5)^(1.85))/((MRE
S(I+C1+C2+C3+3,4)^(1.85))*(MRES(I+C1+C2+C3+3,2))^(4.85));
MRES(I+C1+C2+C3+3,7):=-MRES(I+C1+C2+C3+3,6)/MRES(I+C1+C2+C3+3,5);
MRES(I+C1+C2+C3+3,5):=(-1)*MRES(I+C1+C2+C3+3,5);
END;
IF MRES(I+C1+C2+C3+3,5)>=0 THEN
MRES(I+C1+C2+C3+3,6):=1745155.28*MRES(I+C1+C2+C3+3,3)*(MRES(I+C1+C2
+C3+3,5)^(1.85))/((MRES(I+C1+C2+C3+3,4)^(1.85))*(MRES(I+C1+C2+C3+3,2))^(4
.85));
MRES(I+C1+C2+C3+3,7):=MRES(I+C1+C2+C3+3,6)/MRES(I+C1+C2+C3+3,5);
END;END;
MRES(C2+C1+C3+C4+4,6):=abd+MRES(I+C1+C2+C3+3,6);
abd:=MRES(C2+C1+C3+C4+4,6);
MRES(C2+C1+C3+C4+4,7):=abd1+MRES(I+C1+C2+C3+3,7);
abd1:=MRES(C2+C1+C3+C4+4,7);
END;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,8):=(-
1)*MRES(C2+C1+C3+C4+4,6)/(1.85*MRES(C2+C1+C3+C4+4,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
END;
UNTIL SUMA==dis-C;
END;
IF C==5 THEN
C1:=CAS.SIZE(T1);
M1:=MAKEMAT(0,C1,5);
C2:=CAS.SIZE(T2);
M2:=MAKEMAT(0,C2,5);
C3:=CAS.SIZE(T3);
M3:=MAKEMAT(0,C3,5);
C4:=CAS.SIZE(T4);
M4:=MAKEMAT(0,C4,5);
C5:=CAS.SIZE(T5);
M5:=MAKEMAT(0,C5,5);
FOR J FROM 1 TO C1 DO
TUB1:=T1(J);
M1(J):=Ma(TUB1);
END;
M1:=EDITMAT(M1,{"CIRCUITO
I",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C2 DO
TUB1:=T2(J);
M2(J):=Ma(TUB1);
END;
M2:=EDITMAT(M2,{"CIRCUITO
II",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C3 DO
TUB1:=T3(J);
M3(J):=Ma(TUB1);
END;
M3:=EDITMAT(M3,{"CIRCUITO
III",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C4 DO
TUB1:=T4(J);
M4(J):=Ma(TUB1);
END;
M4:=EDITMAT(M4,{"CIRCUITO
IV",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C5 DO
TUB1:=T5(J);
M5(J):=Ma(TUB1);
END;
M5:=EDITMAT(M5,{"CIRCUITO
V",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
dis:=C1+C2+C3+C4+C5+5;
MRES:=MAKEMAT(0,dis,10);
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
MRES(I,1):=M1(I,1);
MRES(I,2):=M1(I,2);
MRES(I,3):=M1(I,3);
MRES(I,4):=M1(I,4);
MRES(I,5):=M1(I,5);
CASE
IF M1(I,5)<0 THEN
M1(I,5):=(-1)*M1(I,5);
MRES(I,6):=-
1745155.28*M1(I,3)*(M1(I,5)^(1.85))/((M1(I,4)^(1.85))*(M1(I,2))^(4.85));
MRES(I,7):=-MRES(I,6)/M1(I,5);
M1(I,5):=(-1)*M1(I,5);
END;
IF M1(I,5)>=0 THEN
MRES(I,6):=1745155.28*M1(I,3)*(M1(I,5)^(1.85))/((M1(I,4)^(1.85))*(M1(I,2))^(4.85)
);
MRES(I,7):=MRES(I,6)/M1(I,5);
END;
END;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(1.85*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,1):=M2(I,1);
MRES(I+C1+1,2):=M2(I,2);
MRES(I+C1+1,3):=M2(I,3);
MRES(I+C1+1,4):=M2(I,4);
MRES(I+C1+1,5):=M2(I,5);
CASE
IF M2(I,5)<0 THEN
M2(I,5):=(-1)*M2(I,5);
MRES(I+C1+1,6):=(-
1)*1745155.28*M2(I,3)*(M2(I,5)^(1.85))/((M2(I,4)^(1.85))*(M2(I,2))^(4.85));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/M2(I,5);
M2(I,5):=(-1)*M2(I,5);
END;
IF M2(I,5)>=0 THEN
MRES(I+C1+1,6):=1745155.28*M2(I,3)*(M2(I,5)^(1.85))/((M2(I,4)^(1.85))*(M2(I,2))
^(4.85));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/M2(I,5);
END;
END;
MRES(I+C1+1,8):=0;
MRES(I+C1+1,9):=0;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(1.85*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,1):=M3(I,1);
MRES(I+C1+C2+2,2):=M3(I,2);
MRES(I+C1+C2+2,3):=M3(I,3);
MRES(I+C1+C2+2,4):=M3(I,4);
MRES(I+C1+C2+2,5):=M3(I,5);
CASE
IF M3(I,5)<0 THEN
M3(I,5):=(-1)*M3(I,5);
MRES(I+C1+C2+2,6):=(-
1)*1745155.28*M3(I,3)*(M3(I,5)^(1.85))/((M3(I,4)^(1.85))*(M3(I,2))^(4.85));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/M3(I,5);
M3(I,5):=(-1)*M3(I,5);
END;
IF M3(I,5)>=0 THEN
MRES(I+C1+C2+2,6):=1745155.28*M3(I,3)*(M3(I,5)^(1.85))/((M3(I,4)^(1.85))*(M3(
I,2))^(4.85));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/M3(I,5);
END;
END;
MRES(I+C1+C2+2,8):=0;
MRES(I+C1+C2+2,9):=0;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(1.85*MRES(C2+C1+C3+3,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,1):=M4(I,1);
MRES(I+C1+C2+C3+3,2):=M4(I,2);
MRES(I+C1+C2+C3+3,3):=M4(I,3);
MRES(I+C1+C2+C3+3,4):=M4(I,4);
MRES(I+C1+C2+C3+3,5):=M4(I,5);
CASE
IF M4(I,5)<0 THEN
M4(I,5):=(-1)*M4(I,5);
MRES(I+C1+C2+C3+3,6):=(-
1)*1745155.28*M4(I,3)*(M4(I,5)^(1.85))/((M4(I,4)^(1.85))*(M4(I,2))^(4.85));
MRES(I+C1+C2+C3+3,7):=-MRES(I+C1+C2+C3+3,6)/M4(I,5);
M4(I,5):=(-1)*M4(I,5);
END;
IF M4(I,5)>=0 THEN
MRES(I+C1+C2+C3+3,6):=1745155.28*M4(I,3)*(M4(I,5)^(1.85))/((M4(I,4)^(1.85))*(
M4(I,2))^(4.85));
MRES(I+C1+C2+C3+3,7):=MRES(I+C1+C2+C3+3,6)/M4(I,5);
END;END;
MRES(I+C1+C2+C3+3,8):=0;
MRES(I+C1+C2+C3+3,9):=0;
MRES(C2+C1+C3+C4+4,6):=abd+MRES(I+C1+C2+C3+3,6);
abd:=MRES(C2+C1+C3+C4+4,6);
MRES(C2+C1+C3+C4+4,7):=abd1+MRES(I+C1+C2+C3+3,7);
abd1:=MRES(C2+C1+C3+C4+4,7);
END;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,8):=(-
1)*MRES(C2+C1+C3+C4+4,6)/(1.85*MRES(C2+C1+C3+C4+4,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C5 DO
MRES(I+C1+C2+C3+4+C4,1):=M5(I,1);
MRES(I+C1+C2+C3+4+C4,2):=M5(I,2);
MRES(I+C1+C2+C3+4+C4,3):=M5(I,3);
MRES(I+C1+C2+C3+4+C4,4):=M5(I,4);
MRES(I+C1+C2+C3+4+C4,5):=M5(I,5);
CASE
IF M5(I,5)<0 THEN
M5(I,5):=(-1)*M5(I,5);
MRES(I+C1+C2+C3+4+C4,6):=(-
1)*1745155.28*M5(I,3)*(M5(I,5)^(1.85))/((M5(I,4)^(1.85))*(M5(I,2))^(4.85));
MRES(I+C1+C2+C3+4+C4,7):=-MRES(I+C1+C2+C3+4+C4,6)/M5(I,5);
M5(I,5):=(-1)*M5(I,5);
END;
IF M5(I,5)>=0 THEN
MRES(I+C1+C2+C3+4+C4,6):=1745155.28*M5(I,3)*(M5(I,5)^(1.85))/((M5(I,4)^(1.8
5))*(M5(I,2))^(4.85));
MRES(I+C1+C2+C3+4+C4,7):=MRES(I+C1+C2+C3+4+C4,6)/M5(I,5);
END;
END;
MRES(I+C1+C2+C3+4+C4,8):=0;
MRES(I+C1+C2+C3+4+C4,9):=0;
MRES(C2+C1+C3+C4+C5+5,6):=abd+MRES(I+C1+C2+C3+4+C4,6);
abd:=MRES(C2+C1+C3+C4+C5+5,6);
MRES(C2+C1+C3+C4+C5+5,7):=abd1+MRES(I+C1+C2+C3+4+C4,7);
abd1:=MRES(C2+C1+C3+C4+C5+5,7);
END;
FOR I FROM 1 TO C5 DO
MRES(I+C1+C2+C3+4+C4,8):=(-
1)*MRES(C2+C1+C3+C4+C5+5,6)/(1.85*MRES(C2+C1+C3+C4+C5+5,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;

FOR I FROM 1 TO dis DO


MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;

AAA:=0;
MRESP:={};
REPEAT
SUMA:=0;
FOR I FROM 1 TO T DO
FOR J FROM 1 TO dis DO
aaa:=MRES(J,1);
IF I==aaa THEN
Ma(I,5):=ABS(MRES(J,10));
Ma(I,6):=MRES(J,8)+MRES(J,9);
aq:=0.01*ABS(Ma(I,5));
IF aq>ABS(Ma(I,6)) THEN
Ma(I,7):=1;
MRES(J,12):=1;
END;
END;
END;
END;
AAA:=AAA+1;
FOR I FROM 1 TO dis DO
MRES(I,11):=MRES(I,1);
MRES(I,13):=ABS(ABS(MRES(I,8))+ABS(MRES(I,9)));
MRES(I,14):=0.01*ABS(MRES(I,10));
IF MRES(I,12)==1 THEN
SUMA:=SUMA+1;
END;
END;
MRESP(AAA):=MRES;
IF SUMA<dis-C THEN
FOR I FROM 1 TO dis DO
MRES(I,5):=MRES(I,10);
MRES(I,6):=0;
MRES(I,7):=0;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(I,10):=0;
MRES(I,11):=0;
MRES(I,12):=0;
MRES(I,13):=0;
MRES(I,14):=0;
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
CASE
IF MRES(I,5)<0 THEN
MRES(I,5):=(-1)*MRES(I,5);
MRES(I,6):=-
1745155.28*MRES(I,3)*(MRES(I,5)^(1.85))/((MRES(I,4)^(1.85))*(MRES(I,2))^(4.85)
);
MRES(I,7):=-MRES(I,6)/MRES(I,5);
MRES(I,5):=(-1)*MRES(I,5);
END;
IF MRES(I,5)>=0 THEN
MRES(I,6):=1745155.28*MRES(I,3)*(MRES(I,5)^(1.85))/((MRES(I,4)^(1.85))*(MRE
S(I,2))^(4.85));
MRES(I,7):=MRES(I,6)/MRES(I,5);
END;
END;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(1.85*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
CASE
IF MRES(I+C1+1,5)<0 THEN
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
MRES(I+C1+1,6):=(-
1)*1745155.28*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(1.85))/((MRES(I+C1+1,4)^(1.8
5))*(MRES(I+C1+1,2))^(4.85));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/MRES(I+C1+1,5);
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
END;
IF MRES(I+C1+1,5)>=0 THEN
MRES(I+C1+1,6):=1745155.28*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(1.85))/((MRE
S(I+C1+1,4)^(1.85))*(MRES(I+C1+1,2))^(4.85));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/MRES(I+C1+1,5);
END;
END;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(1.85*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
CASE
IF MRES(I+C1+C2+2,5)<0 THEN
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,6):=(-
1)*1745155.28*MRES(I+C1+C2+2,3)*(MRES(I+C1+C2+2,5)^(1.85))/((MRES(I+C1+
C2+2,4)^(1.85))*(MRES(I+C1+C2+2,2))^(4.85));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
END;
IF MRES(I+C1+C2+2,5)>=0 THEN
MRES(I+C1+C2+2,6):=1745155.28*MRES(I+C1+C2+2,3)*(MRES(I+C1+C2+2,5)^(1
.85))/((MRES(I+C1+C2+2,4)^(1.85))*(MRES(I+C1+C2+2,2))^(4.85));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
END;
END;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(1.85*MRES(C2+C1+C3+3,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C4 DO
CASE
IF MRES(I+C1+C2+C3+3,5)<0 THEN
MRES(I+C1+C2+C3+3,5):=(-1)*MRES(I+C1+C2+C3+3,5);
MRES(I+C1+C2+C3+3,6):=(-
1)*1745155.28*MRES(I+C1+C2+C3+3,3)*(MRES(I+C1+C2+C3+3,5)^(1.85))/((MRE
S(I+C1+C2+C3+3,4)^(1.85))*(MRES(I+C1+C2+C3+3,2))^(4.85));
MRES(I+C1+C2+C3+3,7):=-MRES(I+C1+C2+C3+3,6)/MRES(I+C1+C2+C3+3,5);
MRES(I+C1+C2+C3+3,5):=(-1)*MRES(I+C1+C2+C3+3,5);
END;
IF MRES(I+C1+C2+C3+3,5)>=0 THEN
MRES(I+C1+C2+C3+3,6):=1745155.28*MRES(I+C1+C2+C3+3,3)*(MRES(I+C1+C2
+C3+3,5)^(1.85))/((MRES(I+C1+C2+C3+3,4)^(1.85))*(MRES(I+C1+C2+C3+3,2))^(4
.85));
MRES(I+C1+C2+C3+3,7):=MRES(I+C1+C2+C3+3,6)/MRES(I+C1+C2+C3+3,5);
END;END;
MRES(C2+C1+C3+C4+4,6):=abd+MRES(I+C1+C2+C3+3,6);
abd:=MRES(C2+C1+C3+C4+4,6);
MRES(C2+C1+C3+C4+4,7):=abd1+MRES(I+C1+C2+C3+3,7);
abd1:=MRES(C2+C1+C3+C4+4,7);
END;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,8):=(-
1)*MRES(C2+C1+C3+C4+4,6)/(1.85*MRES(C2+C1+C3+C4+4,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C5 DO
CASE
IF MRES(I+C1+C2+C3+4+C4,5)<0 THEN
MRES(I+C1+C2+C3+4+C4,5):=(-1)*MRES(I+C1+C2+C3+4+C4,5);
MRES(I+C1+C2+C3+4+C4,6):=(-
1)*1745155.28*MRES(I+C1+C2+C3+4+C4,3)*(MRES(I+C1+C2+C3+4+C4,5)^(1.85)
)/((MRES(I+C1+C2+C3+4+C4,4)^(1.85))*(MRES(I+C1+C2+C3+4+C4,2))^(4.85));
MRES(I+C1+C2+C3+4+C4,7):=-
MRES(I+C1+C2+C3+4+C4,6)/MRES(I+C1+C2+C3+4+C4,5);
MRES(I+C1+C2+C3+4+C4,5):=(-1)*MRES(I+C1+C2+C3+4+C4,5);
END;
IF MRES(I+C1+C2+C3+4+C4,5)>=0 THEN
MRES(I+C1+C2+C3+4+C4,6):=1745155.28*MRES(I+C1+C2+C3+4+C4,3)*(MRES(I
+C1+C2+C3+4+C4,5)^(1.85))/((MRES(I+C1+C2+C3+4+C4,4)^(1.85))*(MRES(I+C1+
C2+C3+4+C4,2))^(4.85));
MRES(I+C1+C2+C3+4+C4,7):=MRES(I+C1+C2+C3+4+C4,6)/MRES(I+C1+C2+C3+
4+C4,5);
END;
END;
MRES(C2+C1+C3+C4+C5+5,6):=abd+MRES(I+C1+C2+C3+4+C4,6);
abd:=MRES(C2+C1+C3+C4+C5+5,6);
MRES(C2+C1+C3+C4+C5+5,7):=abd1+MRES(I+C1+C2+C3+4+C4,7);
abd1:=MRES(C2+C1+C3+C4+C5+5,7);
END;
FOR I FROM 1 TO C5 DO
MRES(I+C1+C2+C3+4+C4,8):=(-
1)*MRES(C2+C1+C3+C4+C5+5,6)/(1.85*MRES(C2+C1+C3+C4+C5+5,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
END;
UNTIL SUMA==dis-C;

END;

IF C==6 THEN
C1:=CAS.SIZE(T1);
M1:=MAKEMAT(0,C1,5);
C2:=CAS.SIZE(T2);
M2:=MAKEMAT(0,C2,5);
C3:=CAS.SIZE(T3);
M3:=MAKEMAT(0,C3,5);
C4:=CAS.SIZE(T4);
M4:=MAKEMAT(0,C4,5);
C5:=CAS.SIZE(T5);
M5:=MAKEMAT(0,C5,5);
C6:=CAS.SIZE(T6);
M6:=MAKEMAT(0,C6,5);
FOR J FROM 1 TO C1 DO
TUB1:=T1(J);
M1(J):=Ma(TUB1);
END;
M1:=EDITMAT(M1,{"CIRCUITO
I",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});

FOR J FROM 1 TO C2 DO
TUB1:=T2(J);
M2(J):=Ma(TUB1);
END;
M2:=EDITMAT(M2,{"CIRCUITO
II",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C3 DO
TUB1:=T3(J);
M3(J):=Ma(TUB1);
END;
M3:=EDITMAT(M3,{"CIRCUITO
III",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});

FOR J FROM 1 TO C4 DO
TUB1:=T4(J);
M4(J):=Ma(TUB1);
END;
M4:=EDITMAT(M4,{"CIRCUITO
IV",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});

FOR J FROM 1 TO C5 DO
TUB1:=T5(J);
M5(J):=Ma(TUB1);
END;
M5:=EDITMAT(M5,{"CIRCUITO
V",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});

FOR J FROM 1 TO C6 DO
TUB1:=T6(J);
M6(J):=Ma(TUB1);
END;
M6:=EDITMAT(M6,{"CIRCUITO
VI",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});

dis:=C1+C2+C3+C4+C5+C6+6;
MRES:=MAKEMAT(0,dis,10);
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
MRES(I,1):=M1(I,1);
MRES(I,2):=M1(I,2);
MRES(I,3):=M1(I,3);
MRES(I,4):=M1(I,4);
MRES(I,5):=M1(I,5);
CASE
IF M1(I,5)<0 THEN
M1(I,5):=(-1)*M1(I,5);
MRES(I,6):=-
1745155.28*M1(I,3)*(M1(I,5)^(1.85))/((M1(I,4)^(1.85))*(M1(I,2))^(4.85));
MRES(I,7):=-MRES(I,6)/M1(I,5);
M1(I,5):=(-1)*M1(I,5);
END;
IF M1(I,5)>=0 THEN
MRES(I,6):=1745155.28*M1(I,3)*(M1(I,5)^(1.85))/((M1(I,4)^(1.85))*(M1(I,2))^(4.85)
);
MRES(I,7):=MRES(I,6)/M1(I,5);
END;
END;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(1.85*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,1):=M2(I,1);
MRES(I+C1+1,2):=M2(I,2);
MRES(I+C1+1,3):=M2(I,3);
MRES(I+C1+1,4):=M2(I,4);
MRES(I+C1+1,5):=M2(I,5);
CASE
IF M2(I,5)<0 THEN
M2(I,5):=(-1)*M2(I,5);
MRES(I+C1+1,6):=(-
1)*1745155.28*M2(I,3)*(M2(I,5)^(1.85))/((M2(I,4)^(1.85))*(M2(I,2))^(4.85));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/M2(I,5);
M2(I,5):=(-1)*M2(I,5);
END;
IF M2(I,5)>=0 THEN
MRES(I+C1+1,6):=1745155.28*M2(I,3)*(M2(I,5)^(1.85))/((M2(I,4)^(1.85))*(M2(I,2))
^(4.85));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/M2(I,5);
END;
END;
MRES(I+C1+1,8):=0;
MRES(I+C1+1,9):=0;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(1.85*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,1):=M3(I,1);
MRES(I+C1+C2+2,2):=M3(I,2);
MRES(I+C1+C2+2,3):=M3(I,3);
MRES(I+C1+C2+2,4):=M3(I,4);
MRES(I+C1+C2+2,5):=M3(I,5);
CASE
IF M3(I,5)<0 THEN
M3(I,5):=(-1)*M3(I,5);
MRES(I+C1+C2+2,6):=(-
1)*1745155.28*M3(I,3)*(M3(I,5)^(1.85))/((M3(I,4)^(1.85))*(M3(I,2))^(4.85));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/M3(I,5);
M3(I,5):=(-1)*M3(I,5);
END;
IF M3(I,5)>=0 THEN
MRES(I+C1+C2+2,6):=1745155.28*M3(I,3)*(M3(I,5)^(1.85))/((M3(I,4)^(1.85))*(M3(
I,2))^(4.85));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/M3(I,5);
END;
END;
MRES(I+C1+C2+2,8):=0;
MRES(I+C1+C2+2,9):=0;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(1.85*MRES(C2+C1+C3+3,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,1):=M4(I,1);
MRES(I+C1+C2+C3+3,2):=M4(I,2);
MRES(I+C1+C2+C3+3,3):=M4(I,3);
MRES(I+C1+C2+C3+3,4):=M4(I,4);
MRES(I+C1+C2+C3+3,5):=M4(I,5);
CASE
IF M4(I,5)<0 THEN
M4(I,5):=(-1)*M4(I,5);
MRES(I+C1+C2+C3+3,6):=(-
1)*1745155.28*M4(I,3)*(M4(I,5)^(1.85))/((M4(I,4)^(1.85))*(M4(I,2))^(4.85));
MRES(I+C1+C2+C3+3,7):=-MRES(I+C1+C2+C3+3,6)/M4(I,5);
M4(I,5):=(-1)*M4(I,5);
END;
IF M4(I,5)>=0 THEN
MRES(I+C1+C2+C3+3,6):=1745155.28*M4(I,3)*(M4(I,5)^(1.85))/((M4(I,4)^(1.85))*(
M4(I,2))^(4.85));
MRES(I+C1+C2+C3+3,7):=MRES(I+C1+C2+C3+3,6)/M4(I,5);
END;END;
MRES(I+C1+C2+C3+3,8):=0;
MRES(I+C1+C2+C3+3,9):=0;
MRES(C2+C1+C3+C4+4,6):=abd+MRES(I+C1+C2+C3+3,6);
abd:=MRES(C2+C1+C3+C4+4,6);
MRES(C2+C1+C3+C4+4,7):=abd1+MRES(I+C1+C2+C3+3,7);
abd1:=MRES(C2+C1+C3+C4+4,7);
END;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,8):=(-
1)*MRES(C2+C1+C3+C4+4,6)/(1.85*MRES(C2+C1+C3+C4+4,7));
END;

abd:=0;abd1:=0;
FOR I FROM 1 TO C5 DO
MRES(I+C1+C2+C3+4+C4,1):=M5(I,1);
MRES(I+C1+C2+C3+4+C4,2):=M5(I,2);
MRES(I+C1+C2+C3+4+C4,3):=M5(I,3);
MRES(I+C1+C2+C3+4+C4,4):=M5(I,4);
MRES(I+C1+C2+C3+4+C4,5):=M5(I,5);
CASE
IF M5(I,5)<0 THEN
M5(I,5):=(-1)*M5(I,5);
MRES(I+C1+C2+C3+4+C4,6):=(-
1)*1745155.28*M5(I,3)*(M5(I,5)^(1.85))/((M5(I,4)^(1.85))*(M5(I,2))^(4.85));
MRES(I+C1+C2+C3+4+C4,7):=-MRES(I+C1+C2+C3+4+C4,6)/M5(I,5);
M5(I,5):=(-1)*M5(I,5);
END;
IF M5(I,5)>=0 THEN
MRES(I+C1+C2+C3+4+C4,6):=1745155.28*M5(I,3)*(M5(I,5)^(1.85))/((M5(I,4)^(1.8
5))*(M5(I,2))^(4.85));
MRES(I+C1+C2+C3+4+C4,7):=MRES(I+C1+C2+C3+4+C4,6)/M5(I,5);
END;
END;
MRES(I+C1+C2+C3+4+C4,8):=0;
MRES(I+C1+C2+C3+4+C4,9):=0;
MRES(C2+C1+C3+C4+C5+5,6):=abd+MRES(I+C1+C2+C3+4+C4,6);
abd:=MRES(C2+C1+C3+C4+C5+5,6);
MRES(C2+C1+C3+C4+C5+5,7):=abd1+MRES(I+C1+C2+C3+4+C4,7);
abd1:=MRES(C2+C1+C3+C4+C5+5,7);
END;
FOR I FROM 1 TO C5 DO
MRES(I+C1+C2+C3+4+C4,8):=(-
1)*MRES(C2+C1+C3+C4+C5+5,6)/(1.85*MRES(C2+C1+C3+C4+C5+5,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C6 DO
MRES(I+C1+C2+C3+5+C4+C5,1):=M6(I,1);
MRES(I+C1+C2+C3+5+C4+C5,2):=M6(I,2);
MRES(I+C1+C2+C3+5+C4+C5,3):=M6(I,3);
MRES(I+C1+C2+C3+5+C4+C5,4):=M6(I,4);
MRES(I+C1+C2+C3+5+C4+C5,5):=M6(I,5);
CASE
IF M6(I,5)<0 THEN
M6(I,5):=(-1)*M6(I,5);
MRES(I+C1+C2+C3+5+C4+C5,6):=(-
1)*1745155.28*M6(I,3)*(M6(I,5)^(1.85))/((M6(I,4)^(1.85))*(M6(I,2))^(4.85));
MRES(I+C1+C2+C3+5+C4+C5,7):=-MRES(I+C1+C2+C3+5+C4+C5,6)/M6(I,5);
M6(I,5):=(-1)*M6(I,5);
END;
IF M6(I,5)>=0 THEN
MRES(I+C1+C2+C3+5+C4+C5,6):=1745155.28*M6(I,3)*(M6(I,5)^(1.85))/((M6(I,4)^
(1.85))*(M6(I,2))^(4.85));
MRES(I+C1+C2+C3+5+C4+C5,7):=MRES(I+C1+C2+C3+5+C4+C5,6)/M6(I,5);
END;
END;
MRES(I+C1+C2+C3+5+C4+C5,8):=0;
MRES(I+C1+C2+C3+5+C4+C5,9):=0;
MRES(C2+C1+C3+C4+C5+C6+6,6):=abd+MRES(I+C1+C2+C3+5+C4+C5,6);
abd:=MRES(C2+C1+C3+C4+C5+C6+6,6);
MRES(C2+C1+C3+C4+C5+C6+6,7):=abd1+MRES(I+C1+C2+C3+5+C4+C5,7);
abd1:=MRES(C2+C1+C3+C4+C5+C6+6,7);
END;
FOR I FROM 1 TO C6 DO
MRES(I+C1+C2+C3+5+C4+C5,8):=(-
1)*MRES(C2+C1+C3+C4+C5+C6+6,6)/(1.85*MRES(C2+C1+C3+C4+C5+C6+6,7));
END;

FOR I FROM 1 TO dis DO


aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
AAA:=0;
MRESP:={};

REPEAT
SUMA:=0;
FOR I FROM 1 TO T DO
FOR J FROM 1 TO dis DO
aaa:=MRES(J,1);
IF I==aaa THEN
Ma(I,5):=ABS(MRES(J,10));
Ma(I,6):=MRES(J,8)+MRES(J,9);
aq:=0.01*ABS(Ma(I,5));
IF aq>ABS(Ma(I,6)) THEN
Ma(I,7):=1;
MRES(J,12):=1;
END;
END;
END;
END;
AAA:=AAA+1;
FOR I FROM 1 TO dis DO
MRES(I,11):=MRES(I,1);
MRES(I,13):=ABS(ABS(MRES(I,8))+ABS(MRES(I,9)));
MRES(I,14):=0.01*ABS(MRES(I,10));
IF MRES(I,12)==1 THEN
SUMA:=SUMA+1;
END;
END;
MRESP(AAA):=MRES;
IF SUMA<dis-C THEN
FOR I FROM 1 TO dis DO
MRES(I,5):=MRES(I,10);
MRES(I,6):=0;
MRES(I,7):=0;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(I,10):=0;
MRES(I,11):=0;
MRES(I,12):=0;
MRES(I,13):=0;
MRES(I,14):=0;
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
CASE
IF MRES(I,5)<0 THEN
MRES(I,5):=(-1)*MRES(I,5);
MRES(I,6):=-
1745155.28*MRES(I,3)*(MRES(I,5)^(1.85))/((MRES(I,4)^(1.85))*(MRES(I,2))^(4.85)
);
MRES(I,7):=-MRES(I,6)/MRES(I,5);
MRES(I,5):=(-1)*MRES(I,5);
END;
IF MRES(I,5)>=0 THEN
MRES(I,6):=1745155.28*MRES(I,3)*(MRES(I,5)^(1.85))/((MRES(I,4)^(1.85))*(MRE
S(I,2))^(4.85));
MRES(I,7):=MRES(I,6)/MRES(I,5);
END;
END;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(1.85*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
CASE
IF MRES(I+C1+1,5)<0 THEN
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
MRES(I+C1+1,6):=(-
1)*1745155.28*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(1.85))/((MRES(I+C1+1,4)^(1.8
5))*(MRES(I+C1+1,2))^(4.85));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/MRES(I+C1+1,5);
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
END;
IF MRES(I+C1+1,5)>=0 THEN
MRES(I+C1+1,6):=1745155.28*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(1.85))/((MRE
S(I+C1+1,4)^(1.85))*(MRES(I+C1+1,2))^(4.85));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/MRES(I+C1+1,5);
END;
END;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(1.85*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
CASE
IF MRES(I+C1+C2+2,5)<0 THEN
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,6):=(-
1)*1745155.28*MRES(I+C1+C2+2,3)*(MRES(I+C1+C2+2,5)^(1.85))/((MRES(I+C1+
C2+2,4)^(1.85))*(MRES(I+C1+C2+2,2))^(4.85));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
END;
IF MRES(I+C1+C2+2,5)>=0 THEN
MRES(I+C1+C2+2,6):=1745155.28*MRES(I+C1+C2+2,3)*(MRES(I+C1+C2+2,5)^(1
.85))/((MRES(I+C1+C2+2,4)^(1.85))*(MRES(I+C1+C2+2,2))^(4.85));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
END;
END;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(1.85*MRES(C2+C1+C3+3,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C4 DO
CASE
IF MRES(I+C1+C2+C3+3,5)<0 THEN
MRES(I+C1+C2+C3+3,5):=(-1)*MRES(I+C1+C2+C3+3,5);
MRES(I+C1+C2+C3+3,6):=(-
1)*1745155.28*MRES(I+C1+C2+C3+3,3)*(MRES(I+C1+C2+C3+3,5)^(1.85))/((MRE
S(I+C1+C2+C3+3,4)^(1.85))*(MRES(I+C1+C2+C3+3,2))^(4.85));
MRES(I+C1+C2+C3+3,7):=-MRES(I+C1+C2+C3+3,6)/MRES(I+C1+C2+C3+3,5);
MRES(I+C1+C2+C3+3,5):=(-1)*MRES(I+C1+C2+C3+3,5);
END;
IF MRES(I+C1+C2+C3+3,5)>=0 THEN
MRES(I+C1+C2+C3+3,6):=1745155.28*MRES(I+C1+C2+C3+3,3)*(MRES(I+C1+C2
+C3+3,5)^(1.85))/((MRES(I+C1+C2+C3+3,4)^(1.85))*(MRES(I+C1+C2+C3+3,2))^(4
.85));
MRES(I+C1+C2+C3+3,7):=MRES(I+C1+C2+C3+3,6)/MRES(I+C1+C2+C3+3,5);
END;END;
MRES(C2+C1+C3+C4+4,6):=abd+MRES(I+C1+C2+C3+3,6);
abd:=MRES(C2+C1+C3+C4+4,6);
MRES(C2+C1+C3+C4+4,7):=abd1+MRES(I+C1+C2+C3+3,7);
abd1:=MRES(C2+C1+C3+C4+4,7);
END;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,8):=(-
1)*MRES(C2+C1+C3+C4+4,6)/(1.85*MRES(C2+C1+C3+C4+4,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C5 DO
CASE
IF MRES(I+C1+C2+C3+4+C4,5)<0 THEN
MRES(I+C1+C2+C3+4+C4,5):=(-1)*MRES(I+C1+C2+C3+4+C4,5);
MRES(I+C1+C2+C3+4+C4,6):=(-
1)*1745155.28*MRES(I+C1+C2+C3+4+C4,3)*(MRES(I+C1+C2+C3+4+C4,5)^(1.85)
)/((MRES(I+C1+C2+C3+4+C4,4)^(1.85))*(MRES(I+C1+C2+C3+4+C4,2))^(4.85));
MRES(I+C1+C2+C3+4+C4,7):=-
MRES(I+C1+C2+C3+4+C4,6)/MRES(I+C1+C2+C3+4+C4,5);
MRES(I+C1+C2+C3+4+C4,5):=(-1)*MRES(I+C1+C2+C3+4+C4,5);
END;
IF MRES(I+C1+C2+C3+4+C4,5)>=0 THEN
MRES(I+C1+C2+C3+4+C4,6):=1745155.28*MRES(I+C1+C2+C3+4+C4,3)*(MRES(I
+C1+C2+C3+4+C4,5)^(1.85))/((MRES(I+C1+C2+C3+4+C4,4)^(1.85))*(MRES(I+C1+
C2+C3+4+C4,2))^(4.85));
MRES(I+C1+C2+C3+4+C4,7):=MRES(I+C1+C2+C3+4+C4,6)/MRES(I+C1+C2+C3+
4+C4,5);
END;
END;
MRES(C2+C1+C3+C4+C5+5,6):=abd+MRES(I+C1+C2+C3+4+C4,6);
abd:=MRES(C2+C1+C3+C4+C5+5,6);
MRES(C2+C1+C3+C4+C5+5,7):=abd1+MRES(I+C1+C2+C3+4+C4,7);
abd1:=MRES(C2+C1+C3+C4+C5+5,7);
END;
FOR I FROM 1 TO C5 DO
MRES(I+C1+C2+C3+4+C4,8):=(-
1)*MRES(C2+C1+C3+C4+C5+5,6)/(1.85*MRES(C2+C1+C3+C4+C5+5,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C6 DO
CASE
IF MRES(I+C1+C2+C3+5+C4+C5,5)<0 THEN
MRES(I+C1+C2+C3+5+C4+C5,5):=(-1)*MRES(I+C1+C2+C3+5+C4+C5,5);
MRES(I+C1+C2+C3+5+C4+C5,6):=(-
1)*1745155.28*MRES(I+C1+C2+C3+5+C4+C5,3)*(MRES(I+C1+C2+C3+5+C4+C5,
5)^(1.85))/((MRES(I+C1+C2+C3+5+C4+C5,4)^(1.85))*(MRES(I+C1+C2+C3+5+C4+
C5,2))^(4.85));
MRES(I+C1+C2+C3+5+C4+C5,7):=-
MRES(I+C1+C2+C3+5+C4+C5,6)/MRES(I+C1+C2+C3+5+C4+C5,5);
MRES(I+C1+C2+C3+5+C4+C5,5):=(-1)*MRES(I+C1+C2+C3+5+C4+C5,5);
END;
IF MRES(I+C1+C2+C3+5+C4+C5,5)>=0 THEN
MRES(I+C1+C2+C3+5+C4+C5,6):=1745155.28*MRES(I+C1+C2+C3+5+C4+C5,3)*(
MRES(I+C1+C2+C3+5+C4+C5,5)^(1.85))/((MRES(I+C1+C2+C3+5+C4+C5,4)^(1.85)
)*(MRES(I+C1+C2+C3+5+C4+C5,2))^(4.85));
MRES(I+C1+C2+C3+5+C4+C5,7):=MRES(I+C1+C2+C3+5+C4+C5,6)/MRES(I+C1+
C2+C3+5+C4+C5,5);
END;
END;
MRES(C2+C1+C3+C4+C5+C6+6,6):=abd+MRES(I+C1+C2+C3+5+C4+C5,6);
abd:=MRES(C2+C1+C3+C4+C5+C6+6,6);
MRES(C2+C1+C3+C4+C5+C6+6,7):=abd1+MRES(I+C1+C2+C3+5+C4+C5,7);
abd1:=MRES(C2+C1+C3+C4+C5+C6+6,7);
END;
FOR I FROM 1 TO C6 DO
MRES(I+C1+C2+C3+5+C4+C5,8):=(-
1)*MRES(C2+C1+C3+C4+C5+C6+6,6)/(1.85*MRES(C2+C1+C3+C4+C5+C6+6,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;

END;
UNTIL SUMA==dis-C;

END;
END;
END;

Calculos2()
BEGIN
CASE
IF C==1 THEN
C1:=CAS.SIZE(T1);
M1:=MAKEMAT(0,C1,5);
FOR J FROM 1 TO C1 DO
TUB1:=T1(J);
M1(J):=Ma(TUB1);
END;
M1:=EDITMAT(M1,{"CIRCUITO
I",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
dis:=C1+1;
MRES:=MAKEMAT(0,dis,10);
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
MRES(I,1):=M1(I,1);
MRES(I,2):=M1(I,2);
MRES(I,3):=M1(I,3);
MRES(I,4):=M1(I,4);
MRES(I,5):=M1(I,5);
CASE
IF M1(I,5)<0 THEN
M1(I,5):=(-1)*M1(I,5);
MRES(I,6):=-0.0826*M1(I,4)*M1(I,3)*(M1(I,5)^(2))/(M1(I,2)^(5));
MRES(I,7):=-MRES(I,6)/M1(I,5);
M1(I,5):=(-1)*M1(I,5);
END;
IF M1(I,5)>=0 THEN
MRES(I,6):=0.0826*M1(I,4)*M1(I,3)*(M1(I,5)^(2))/(M1(I,2)^(5));
MRES(I,7):=MRES(I,6)/M1(I,5);
END;
END;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(2*MRES(C1+1,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
AAA:=0;
MRESP:={};
REPEAT
SUMA:=0;
FOR I FROM 1 TO T DO
FOR J FROM 1 TO dis DO
aaa:=MRES(J,1);
IF I==aaa THEN
Ma(I,5):=ABS(MRES(J,10));
Ma(I,6):=MRES(J,8)+MRES(J,9);
aq:=0.01*ABS(Ma(I,5));
IF aq>ABS(Ma(I,6)) THEN
Ma(I,7):=1;
MRES(J,12):=1;
END;
END;
END;
END;
AAA:=AAA+1;
FOR I FROM 1 TO dis DO
MRES(I,11):=MRES(I,1);
MRES(I,13):=ABS(ABS(MRES(I,8))+ABS(MRES(I,9)));
MRES(I,14):=0.01*ABS(MRES(I,10));
IF MRES(I,12)==1 THEN
SUMA:=SUMA+1;
END;
END;
MRESP(AAA):=MRES;
IF SUMA<dis-C THEN
FOR I FROM 1 TO dis DO
MRES(I,5):=MRES(I,10);
MRES(I,6):=0;
MRES(I,7):=0;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(I,10):=0;
MRES(I,11):=0;
MRES(I,12):=0;
MRES(I,13):=0;
MRES(I,14):=0;
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
CASE
IF MRES(I,5)<0 THEN
MRES(I,5):=(-1)*MRES(I,5);
MRES(I,6):=-0.0826*MRES(I,4)*MRES(I,3)*(MRES(I,5)^(2))/(MRES(I,2)^(5));
MRES(I,7):=-MRES(I,6)/MRES(I,5);
MRES(I,5):=(-1)*MRES(I,5);
END;
IF MRES(I,5)>=0 THEN
MRES(I,6):=0.0826*MRES(I,4)*MRES(I,3)*(MRES(I,5)^(2))/(MRES(I,2)^(5));
MRES(I,7):=MRES(I,6)/MRES(I,5);
END;
END;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(2*MRES(C1+1,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
END;
UNTIL SUMA==dis-C;
END;
IF C==2 THEN
C1:=CAS.SIZE(T1);
M1:=MAKEMAT(0,C1,5);
C2:=CAS.SIZE(T2);
M2:=MAKEMAT(0,C2,5);
FOR J FROM 1 TO C1 DO
TUB1:=T1(J);
M1(J):=Ma(TUB1);
END;
M1:=EDITMAT(M1,{"CIRCUITO
I",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C2 DO
TUB1:=T2(J);
M2(J):=Ma(TUB1);
END;
M2:=EDITMAT(M2,{"CIRCUITO
II",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
dis:=C1+C2+2;
MRES:=MAKEMAT(0,dis,10);
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
MRES(I,1):=M1(I,1);
MRES(I,2):=M1(I,2);
MRES(I,3):=M1(I,3);
MRES(I,4):=M1(I,4);
MRES(I,5):=M1(I,5);
CASE
IF M1(I,5)<0 THEN
M1(I,5):=(-1)*M1(I,5);
MRES(I,6):=-0.0826*M1(I,4)*M1(I,3)*(M1(I,5)^(2))/(M1(I,2)^(5));
MRES(I,7):=-MRES(I,6)/M1(I,5);
M1(I,5):=(-1)*M1(I,5);
END;
IF M1(I,5)>=0 THEN
MRES(I,6):=0.0826*M1(I,4)*M1(I,3)*(M1(I,5)^(2))/(M1(I,2)^(5));
MRES(I,7):=MRES(I,6)/M1(I,5);
END;
END;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(2*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,1):=M2(I,1);
MRES(I+C1+1,2):=M2(I,2);
MRES(I+C1+1,3):=M2(I,3);
MRES(I+C1+1,4):=M2(I,4);
MRES(I+C1+1,5):=M2(I,5);
CASE
IF M2(I,5)<0 THEN
M2(I,5):=(-1)*M2(I,5);
MRES(I+C1+1,6):=(-1)*0.0826*M2(I,4)*M2(I,3)*(M2(I,5)^(2))/(M2(I,2)^(5));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/M2(I,5);
M2(I,5):=(-1)*M2(I,5);
END;
IF M2(I,5)>=0 THEN
MRES(I+C1+1,6):=0.0826*M2(I,4)*M2(I,3)*(M2(I,5)^(2))/(M2(I,2)^(5));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/M2(I,5);
END;
END;
MRES(I+C1+1,8):=0;
MRES(I+C1+1,9):=0;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(2*MRES(C2+C1+2,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
AAA:=0;
MRESP:={};
REPEAT
SUMA:=0;
FOR I FROM 1 TO T DO
FOR J FROM 1 TO dis DO
aaa:=MRES(J,1);
IF I==aaa THEN
Ma(I,5):=ABS(MRES(J,10));
Ma(I,6):=MRES(J,8)+MRES(J,9);
aq:=0.01*ABS(Ma(I,5));
IF aq>ABS(Ma(I,6)) THEN
Ma(I,7):=1;
MRES(J,12):=1;
END;
END;
END;
END;
AAA:=AAA+1;
FOR I FROM 1 TO dis DO
MRES(I,11):=MRES(I,1);
MRES(I,13):=ABS(ABS(MRES(I,8))+ABS(MRES(I,9)));
MRES(I,14):=0.01*ABS(MRES(I,10));
IF MRES(I,12)==1 THEN
SUMA:=SUMA+1;
END;
END;
MRESP(AAA):=MRES;
IF SUMA<dis-C THEN
FOR I FROM 1 TO dis DO
MRES(I,5):=MRES(I,10);
MRES(I,6):=0;
MRES(I,7):=0;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(I,10):=0;
MRES(I,11):=0;
MRES(I,12):=0;
MRES(I,13):=0;
MRES(I,14):=0;
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
CASE
IF MRES(I,5)<0 THEN
MRES(I,5):=(-1)*MRES(I,5);
MRES(I,6):=-0.0826*MRES(I,4)*MRES(I,3)*(MRES(I,5)^(2))/(MRES(I,2)^(5));
MRES(I,7):=-MRES(I,6)/MRES(I,5);
MRES(I,5):=(-1)*MRES(I,5);
END;
IF MRES(I,5)>=0 THEN
MRES(I,6):=0.0826*MRES(I,4)*MRES(I,3)*(MRES(I,5)^(2))/(MRES(I,2)^(5));
MRES(I,7):=MRES(I,6)/MRES(I,5);
END;
END;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(2*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
CASE
IF MRES(I+C1+1,5)<0 THEN
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
MRES(I+C1+1,6):=(-
1)*0.0826*MRES(I+C1+1,4)*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(2))/(MRES(I+C1
+1,2)^(5));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/MRES(I+C1+1,5);
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
END;
IF MRES(I+C1+1,5)>=0 THEN
MRES(I+C1+1,6):=0.0826*MRES(I+C1+1,4)*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(
2))/(MRES(I+C1+1,2)^(5));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/MRES(I+C1+1,5);
END;
END;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(2*MRES(C2+C1+2,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
END;
UNTIL SUMA==dis-C;
END;
IF C==3 THEN
C1:=CAS.SIZE(T1);
M1:=MAKEMAT(0,C1,5);
C2:=CAS.SIZE(T2);
M2:=MAKEMAT(0,C2,5);
C3:=CAS.SIZE(T3);
M3:=MAKEMAT(0,C3,5);
FOR J FROM 1 TO C1 DO
TUB1:=T1(J);
M1(J):=Ma(TUB1);
END;
M1:=EDITMAT(M1,{"CIRCUITO
I",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C2 DO
TUB1:=T2(J);
M2(J):=Ma(TUB1);
END;
M2:=EDITMAT(M2,{"CIRCUITO
II",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C3 DO
TUB1:=T3(J);
M3(J):=Ma(TUB1);
END;
M3:=EDITMAT(M3,{"CIRCUITO
III",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
dis:=C1+C2+C3+3;
MRES:=MAKEMAT(0,dis,10);
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
MRES(I,1):=M1(I,1);
MRES(I,2):=M1(I,2);
MRES(I,3):=M1(I,3);
MRES(I,4):=M1(I,4);
MRES(I,5):=M1(I,5);
CASE
IF M1(I,5)<0 THEN
M1(I,5):=(-1)*M1(I,5);
MRES(I,6):=-0.0826*M1(I,4)*M1(I,3)*(M1(I,5)^(2))/(M1(I,2)^(5));
MRES(I,7):=-MRES(I,6)/M1(I,5);
M1(I,5):=(-1)*M1(I,5);
END;
IF M1(I,5)>=0 THEN
MRES(I,6):=0.0826*M1(I,4)*M1(I,3)*(M1(I,5)^(2))/(M1(I,2)^(5));
MRES(I,7):=MRES(I,6)/M1(I,5);
END;
END;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(2*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,1):=M2(I,1);
MRES(I+C1+1,2):=M2(I,2);
MRES(I+C1+1,3):=M2(I,3);
MRES(I+C1+1,4):=M2(I,4);
MRES(I+C1+1,5):=M2(I,5);
CASE
IF M2(I,5)<0 THEN
M2(I,5):=(-1)*M2(I,5);
MRES(I+C1+1,6):=(-1)*0.0826*M2(I,4)*M2(I,3)*(M2(I,5)^(2))/(M2(I,2)^(5));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/M2(I,5);
M2(I,5):=(-1)*M2(I,5);
END;
IF M2(I,5)>=0 THEN
MRES(I+C1+1,6):=0.0826*M2(I,4)*M2(I,3)*(M2(I,5)^(2))/(M2(I,2)^(5));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/M2(I,5);
END;
END;
MRES(I+C1+1,8):=0;
MRES(I+C1+1,9):=0;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(2*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,1):=M3(I,1);
MRES(I+C1+C2+2,2):=M3(I,2);
MRES(I+C1+C2+2,3):=M3(I,3);
MRES(I+C1+C2+2,4):=M3(I,4);
MRES(I+C1+C2+2,5):=M3(I,5);
CASE
IF M3(I,5)<0 THEN
M3(I,5):=(-1)*M3(I,5);
MRES(I+C1+C2+2,6):=(-1)*0.0826*M3(I,4)*M3(I,3)*(M3(I,5)^(2))/(M3(I,2)^(5));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/M3(I,5);
M3(I,5):=(-1)*M3(I,5);
END;
IF M3(I,5)>=0 THEN
MRES(I+C1+C2+2,6):=0.0826*M3(I,4)*M3(I,3)*(M3(I,5)^(2))/(M3(I,2)^(5));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/M3(I,5);
END;
END;
MRES(I+C1+C2+2,8):=0;
MRES(I+C1+C2+2,9):=0;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(2*MRES(C2+C1+C3+3,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
AAA:=0;
MRESP:={};
REPEAT
SUMA:=0;
FOR I FROM 1 TO T DO
FOR J FROM 1 TO dis DO
aaa:=MRES(J,1);
IF I==aaa THEN
Ma(I,5):=ABS(MRES(J,10));
Ma(I,6):=MRES(J,8)+MRES(J,9);
aq:=0.01*ABS(Ma(I,5));
IF aq>ABS(Ma(I,6)) THEN
Ma(I,7):=1;
MRES(J,12):=1;
END;
END;
END;
END;
AAA:=AAA+1;
FOR I FROM 1 TO dis DO
MRES(I,11):=MRES(I,1);
MRES(I,13):=ABS(ABS(MRES(I,8))+ABS(MRES(I,9)));
MRES(I,14):=0.01*ABS(MRES(I,10));
IF MRES(I,12)==1 THEN
SUMA:=SUMA+1;
END;
END;
MRESP(AAA):=MRES;
IF SUMA<dis-C THEN
FOR I FROM 1 TO dis DO
MRES(I,5):=MRES(I,10);
MRES(I,6):=0;
MRES(I,7):=0;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(I,10):=0;
MRES(I,11):=0;
MRES(I,12):=0;
MRES(I,13):=0;
MRES(I,14):=0;
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
CASE
IF MRES(I,5)<0 THEN
MRES(I,5):=(-1)*MRES(I,5);
MRES(I,6):=-0.0826*MRES(I,4)*MRES(I,3)*(MRES(I,5)^(2))/(MRES(I,2)^(5));
MRES(I,7):=-MRES(I,6)/MRES(I,5);
MRES(I,5):=(-1)*MRES(I,5);
END;
IF MRES(I,5)>=0 THEN
MRES(I,6):=0.0826*MRES(I,4)*MRES(I,3)*(MRES(I,5)^(2))/(MRES(I,2)^(5));
MRES(I,7):=MRES(I,6)/MRES(I,5);
END;
END;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(2*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
CASE
IF MRES(I+C1+1,5)<0 THEN
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
MRES(I+C1+1,6):=(-
1)*0.0826*MRES(I+C1+1,4)*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(2))/(MRES(I+C1
+1,2)^(5));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/MRES(I+C1+1,5);
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
END;
IF MRES(I+C1+1,5)>=0 THEN
MRES(I+C1+1,6):=0.0826*MRES(I+C1+1,4)*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(
2))/(MRES(I+C1+1,2)^(5));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/MRES(I+C1+1,5);
END;
END;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(2*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
CASE
IF MRES(I+C1+C2+2,5)<0 THEN
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,6):=(-
1)*0.0826*MRES(I+C1+C2+2,4)*MRES(I+C1+C2+2,3)*(MRES(I+C1+C2+2,5)^(2))/
(MRES(I+C1+C2+2,2)^(5));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
END;
IF MRES(I+C1+C2+2,5)>=0 THEN
MRES(I+C1+C2+2,6):=0.0826*MRES(I+C1+C2+2,4)*MRES(I+C1+C2+2,3)*(MRES
(I+C1+C2+2,5)^(2))/(MRES(I+C1+C2+2,2)^(5));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
END;
END;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(2*MRES(C2+C1+C3+3,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
END;
UNTIL SUMA==dis-C;
END;
IF C==4 THEN
C1:=CAS.SIZE(T1);
M1:=MAKEMAT(0,C1,5);
C2:=CAS.SIZE(T2);
M2:=MAKEMAT(0,C2,5);
C3:=CAS.SIZE(T3);
M3:=MAKEMAT(0,C3,5);
C4:=CAS.SIZE(T4);
M4:=MAKEMAT(0,C4,5);
FOR J FROM 1 TO C1 DO
TUB1:=T1(J);
M1(J):=Ma(TUB1);
END;
M1:=EDITMAT(M1,{"CIRCUITO
I",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C2 DO
TUB1:=T2(J);
M2(J):=Ma(TUB1);
END;
M2:=EDITMAT(M2,{"CIRCUITO
II",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C3 DO
TUB1:=T3(J);
M3(J):=Ma(TUB1);
END;
M3:=EDITMAT(M3,{"CIRCUITO
III",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C4 DO
TUB1:=T4(J);
M4(J):=Ma(TUB1);
END;
M4:=EDITMAT(M4,{"CIRCUITO
IV",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
dis:=C1+C2+C3+C4+4;
MRES:=MAKEMAT(0,dis,10);
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
MRES(I,1):=M1(I,1);
MRES(I,2):=M1(I,2);
MRES(I,3):=M1(I,3);
MRES(I,4):=M1(I,4);
MRES(I,5):=M1(I,5);
CASE
IF M1(I,5)<0 THEN
M1(I,5):=(-1)*M1(I,5);
MRES(I,6):=-0.0826*M1(I,4)*M1(I,3)*(M1(I,5)^(2))/(M1(I,2)^(5));
MRES(I,7):=-MRES(I,6)/M1(I,5);
M1(I,5):=(-1)*M1(I,5);
END;
IF M1(I,5)>=0 THEN
MRES(I,6):=0.0826*M1(I,4)*M1(I,3)*(M1(I,5)^(2))/(M1(I,2)^(5));
MRES(I,7):=MRES(I,6)/M1(I,5);
END;
END;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(2*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,1):=M2(I,1);
MRES(I+C1+1,2):=M2(I,2);
MRES(I+C1+1,3):=M2(I,3);
MRES(I+C1+1,4):=M2(I,4);
MRES(I+C1+1,5):=M2(I,5);
CASE
IF M2(I,5)<0 THEN
M2(I,5):=(-1)*M2(I,5);
MRES(I+C1+1,6):=(-1)*0.0826*M2(I,4)*M2(I,3)*(M2(I,5)^(2))/(M2(I,2)^(5));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/M2(I,5);
M2(I,5):=(-1)*M2(I,5);
END;
IF M2(I,5)>=0 THEN
MRES(I+C1+1,6):=0.0826*M2(I,4)*M2(I,3)*(M2(I,5)^(2))/(M2(I,2)^(5));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/M2(I,5);
END;
END;
MRES(I+C1+1,8):=0;
MRES(I+C1+1,9):=0;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(2*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,1):=M3(I,1);
MRES(I+C1+C2+2,2):=M3(I,2);
MRES(I+C1+C2+2,3):=M3(I,3);
MRES(I+C1+C2+2,4):=M3(I,4);
MRES(I+C1+C2+2,5):=M3(I,5);
CASE
IF M3(I,5)<0 THEN
M3(I,5):=(-1)*M3(I,5);
MRES(I+C1+C2+2,6):=(-1)*0.0826*M3(I,4)*M3(I,3)*(M3(I,5)^(2))/(M3(I,2)^(5));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/M3(I,5);
M3(I,5):=(-1)*M3(I,5);
END;
IF M3(I,5)>=0 THEN
MRES(I+C1+C2+2,6):=0.0826*M3(I,4)*M3(I,3)*(M3(I,5)^(2))/(M3(I,2)^(5));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/M3(I,5);
END;
END;
MRES(I+C1+C2+2,8):=0;
MRES(I+C1+C2+2,9):=0;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(2*MRES(C2+C1+C3+3,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,1):=M4(I,1);
MRES(I+C1+C2+C3+3,2):=M4(I,2);
MRES(I+C1+C2+C3+3,3):=M4(I,3);
MRES(I+C1+C2+C3+3,4):=M4(I,4);
MRES(I+C1+C2+C3+3,5):=M4(I,5);
CASE
IF M4(I,5)<0 THEN
M4(I,5):=(-1)*M4(I,5);
MRES(I+C1+C2+C3+3,6):=(-
1)*0.0826*M4(I,4)*M4(I,3)*(M4(I,5)^(2))/(M4(I,2)^(5));
MRES(I+C1+C2+C3+3,7):=-MRES(I+C1+C2+C3+3,6)/M4(I,5);
M4(I,5):=(-1)*M4(I,5);
END;
IF M4(I,5)>=0 THEN
MRES(I+C1+C2+C3+3,6):=0.0826*M4(I,4)*M4(I,3)*(M4(I,5)^(2))/(M4(I,2)^(5));
MRES(I+C1+C2+C3+3,7):=MRES(I+C1+C2+C3+3,6)/M4(I,5);
END;
END;
MRES(I+C1+C2+C3+3,8):=0;
MRES(I+C1+C2+C3+3,9):=0;
MRES(C2+C1+C3+C4+4,6):=abd+MRES(I+C1+C2+C3+3,6);
abd:=MRES(C2+C1+C3+C4+4,6);
MRES(C2+C1+C3+C4+4,7):=abd1+MRES(I+C1+C2+C3+3,7);
abd1:=MRES(C2+C1+C3+C4+4,7);
END;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,8):=(-
1)*MRES(C2+C1+C3+C4+4,6)/(2*MRES(C2+C1+C3+C4+4,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
AAA:=0;
MRESP:={};
REPEAT
SUMA:=0;
FOR I FROM 1 TO T DO
FOR J FROM 1 TO dis DO
aaa:=MRES(J,1);
IF I==aaa THEN
Ma(I,5):=ABS(MRES(J,10));
Ma(I,6):=MRES(J,8)+MRES(J,9);
aq:=0.01*ABS(Ma(I,5));
IF aq>ABS(Ma(I,6)) THEN
Ma(I,7):=1;
MRES(J,12):=1;
END;
END;
END;
END;
AAA:=AAA+1;
FOR I FROM 1 TO dis DO
MRES(I,11):=MRES(I,1);
MRES(I,13):=ABS(ABS(MRES(I,8))+ABS(MRES(I,9)));
MRES(I,14):=0.01*ABS(MRES(I,10));
IF MRES(I,12)==1 THEN
SUMA:=SUMA+1;
END;
END;
MRESP(AAA):=MRES;
IF SUMA<dis-C THEN
FOR I FROM 1 TO dis DO
MRES(I,5):=MRES(I,10);
MRES(I,6):=0;
MRES(I,7):=0;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(I,10):=0;
MRES(I,11):=0;
MRES(I,12):=0;
MRES(I,13):=0;
MRES(I,14):=0;
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
CASE
IF MRES(I,5)<0 THEN
MRES(I,5):=(-1)*MRES(I,5);
MRES(I,6):=-0.0826*MRES(I,4)*MRES(I,3)*(MRES(I,5)^(2))/(MRES(I,2)^(5));
MRES(I,7):=-MRES(I,6)/MRES(I,5);
MRES(I,5):=(-1)*MRES(I,5);
END;
IF MRES(I,5)>=0 THEN
MRES(I,6):=0.0826*MRES(I,4)*MRES(I,3)*(MRES(I,5)^(2))/(MRES(I,2)^(5));
MRES(I,7):=MRES(I,6)/MRES(I,5);
END;
END;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(2*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
CASE
IF MRES(I+C1+1,5)<0 THEN
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
MRES(I+C1+1,6):=(-
1)*0.0826*MRES(I+C1+1,4)*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(2))/(MRES(I+C1
+1,2)^(5));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/MRES(I+C1+1,5);
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
END;
IF MRES(I+C1+1,5)>=0 THEN
MRES(I+C1+1,6):=0.0826*MRES(I+C1+1,4)*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(
2))/(MRES(I+C1+1,2)^(5));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/MRES(I+C1+1,5);
END;
END;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(2*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
CASE
IF MRES(I+C1+C2+2,5)<0 THEN
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,6):=(-
1)*0.0826*MRES(I+C1+C2+2,4)*MRES(I+C1+C2+2,3)*(MRES(I+C1+C2+2,5)^(2))/
(MRES(I+C1+C2+2,2)^(5));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
END;
IF MRES(I+C1+C2+2,5)>=0 THEN
MRES(I+C1+C2+2,6):=0.0826*MRES(I+C1+C2+2,4)*MRES(I+C1+C2+2,3)*(MRES
(I+C1+C2+2,5)^(2))/(MRES(I+C1+C2+2,2)^(5));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
END;
END;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(2*MRES(C2+C1+C3+3,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C4 DO
CASE
IF MRES(I+C1+C2+C3+3,5)<0 THEN
MRES(I+C1+C2+C3+3,5):=(-1)*MRES(I+C1+C2+C3+3,5);
MRES(I+C1+C2+C3+3,6):=(-
1)*0.0826*MRES(I+C1+C2+C3+3,4)*MRES(I+C1+C2+C3+3,3)*(MRES(I+C1+C2+
C3+3,5)^(2))/(MRES(I+C1+C2+C3+3,2)^(5));
MRES(I+C1+C2+C3+3,7):=-MRES(I+C1+C2+C3+3,6)/MRES(I+C1+C2+C3+3,5);
MRES(I+C1+C2+C3+3,5):=(-1)*MRES(I+C1+C2+C3+3,5);
END;
IF MRES(I+C1+C2+C3+3,5)>=0 THEN
MRES(I+C1+C2+C3+3,6):=0.0826*MRES(I+C1+C2+C3+3,4)*MRES(I+C1+C2+C3+
3,3)*(MRES(I+C1+C2+C3+3,5)^(2))/(MRES(I+C1+C2+C3+3,2)^(5));
MRES(I+C1+C2+C3+3,7):=MRES(I+C1+C2+C3+3,6)/MRES(I+C1+C2+C3+3,5);
END;END;
MRES(C2+C1+C3+C4+4,6):=abd+MRES(I+C1+C2+C3+3,6);
abd:=MRES(C2+C1+C3+C4+4,6);
MRES(C2+C1+C3+C4+4,7):=abd1+MRES(I+C1+C2+C3+3,7);
abd1:=MRES(C2+C1+C3+C4+4,7);
END;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,8):=(-
1)*MRES(C2+C1+C3+C4+4,6)/(2*MRES(C2+C1+C3+C4+4,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
END;
UNTIL SUMA==dis-C;
END;
IF C==5 THEN
C1:=CAS.SIZE(T1);
M1:=MAKEMAT(0,C1,5);
C2:=CAS.SIZE(T2);
M2:=MAKEMAT(0,C2,5);
C3:=CAS.SIZE(T3);
M3:=MAKEMAT(0,C3,5);
C4:=CAS.SIZE(T4);
M4:=MAKEMAT(0,C4,5);
C5:=CAS.SIZE(T5);
M5:=MAKEMAT(0,C5,5);
FOR J FROM 1 TO C1 DO
TUB1:=T1(J);
M1(J):=Ma(TUB1);
END;
M1:=EDITMAT(M1,{"CIRCUITO
I",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C2 DO
TUB1:=T2(J);
M2(J):=Ma(TUB1);
END;
M2:=EDITMAT(M2,{"CIRCUITO
II",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C3 DO
TUB1:=T3(J);
M3(J):=Ma(TUB1);
END;
M3:=EDITMAT(M3,{"CIRCUITO
III",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C4 DO
TUB1:=T4(J);
M4(J):=Ma(TUB1);
END;
M4:=EDITMAT(M4,{"CIRCUITO
IV",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C5 DO
TUB1:=T5(J);
M5(J):=Ma(TUB1);
END;
M5:=EDITMAT(M5,{"CIRCUITO
V",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
dis:=C1+C2+C3+C4+C5+5;
MRES:=MAKEMAT(0,dis,10);
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
MRES(I,1):=M1(I,1);
MRES(I,2):=M1(I,2);
MRES(I,3):=M1(I,3);
MRES(I,4):=M1(I,4);
MRES(I,5):=M1(I,5);
CASE
IF M1(I,5)<0 THEN
M1(I,5):=(-1)*M1(I,5);
MRES(I,6):=-0.0826*M1(I,4)*M1(I,3)*(M1(I,5)^(2))/(M1(I,2)^(5));
MRES(I,7):=-MRES(I,6)/M1(I,5);
M1(I,5):=(-1)*M1(I,5);
END;
IF M1(I,5)>=0 THEN
MRES(I,6):=0.0826*M1(I,4)*M1(I,3)*(M1(I,5)^(2))/(M1(I,2)^(5));
MRES(I,7):=MRES(I,6)/M1(I,5);
END;
END;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(2*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,1):=M2(I,1);
MRES(I+C1+1,2):=M2(I,2);
MRES(I+C1+1,3):=M2(I,3);
MRES(I+C1+1,4):=M2(I,4);
MRES(I+C1+1,5):=M2(I,5);
CASE
IF M2(I,5)<0 THEN
M2(I,5):=(-1)*M2(I,5);
MRES(I+C1+1,6):=(-1)*0.0826*M2(I,4)*M2(I,3)*(M2(I,5)^(2))/(M2(I,2)^(5));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/M2(I,5);
M2(I,5):=(-1)*M2(I,5);
END;
IF M2(I,5)>=0 THEN
MRES(I+C1+1,6):=0.0826*M2(I,4)*M2(I,3)*(M2(I,5)^(2))/(M2(I,2)^(5));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/M2(I,5);
END;
END;
MRES(I+C1+1,8):=0;
MRES(I+C1+1,9):=0;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(2*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,1):=M3(I,1);
MRES(I+C1+C2+2,2):=M3(I,2);
MRES(I+C1+C2+2,3):=M3(I,3);
MRES(I+C1+C2+2,4):=M3(I,4);
MRES(I+C1+C2+2,5):=M3(I,5);
CASE
IF M3(I,5)<0 THEN
M3(I,5):=(-1)*M3(I,5);
MRES(I+C1+C2+2,6):=(-1)*0.0826*M3(I,4)*M3(I,3)*(M3(I,5)^(2))/(M3(I,2)^(5));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/M3(I,5);
M3(I,5):=(-1)*M3(I,5);
END;
IF M3(I,5)>=0 THEN
MRES(I+C1+C2+2,6):=0.0826*M3(I,4)*M3(I,3)*(M3(I,5)^(2))/(M3(I,2)^(5));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/M3(I,5);
END;
END;
MRES(I+C1+C2+2,8):=0;
MRES(I+C1+C2+2,9):=0;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(2*MRES(C2+C1+C3+3,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,1):=M4(I,1);
MRES(I+C1+C2+C3+3,2):=M4(I,2);
MRES(I+C1+C2+C3+3,3):=M4(I,3);
MRES(I+C1+C2+C3+3,4):=M4(I,4);
MRES(I+C1+C2+C3+3,5):=M4(I,5);
CASE
IF M4(I,5)<0 THEN
M4(I,5):=(-1)*M4(I,5);
MRES(I+C1+C2+C3+3,6):=(-
1)*0.0826*M4(I,4)*M4(I,3)*(M4(I,5)^(2))/(M4(I,2)^(5));
MRES(I+C1+C2+C3+3,7):=-MRES(I+C1+C2+C3+3,6)/M4(I,5);
M4(I,5):=(-1)*M4(I,5);
END;
IF M4(I,5)>=0 THEN
MRES(I+C1+C2+C3+3,6):=0.0826*M4(I,4)*M4(I,3)*(M4(I,5)^(2))/(M4(I,2)^(5));
MRES(I+C1+C2+C3+3,7):=MRES(I+C1+C2+C3+3,6)/M4(I,5);
END;
END;
MRES(I+C1+C2+C3+3,8):=0;
MRES(I+C1+C2+C3+3,9):=0;
MRES(C2+C1+C3+C4+4,6):=abd+MRES(I+C1+C2+C3+3,6);
abd:=MRES(C2+C1+C3+C4+4,6);
MRES(C2+C1+C3+C4+4,7):=abd1+MRES(I+C1+C2+C3+3,7);
abd1:=MRES(C2+C1+C3+C4+4,7);
END;

FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,8):=(-
1)*MRES(C2+C1+C3+C4+4,6)/(2*MRES(C2+C1+C3+C4+4,7));
END;

abd:=0;abd1:=0;
FOR I FROM 1 TO C5 DO
MRES(I+C1+C2+C3+4+C4,1):=M5(I,1);
MRES(I+C1+C2+C3+4+C4,2):=M5(I,2);
MRES(I+C1+C2+C3+4+C4,3):=M5(I,3);
MRES(I+C1+C2+C3+4+C4,4):=M5(I,4);
MRES(I+C1+C2+C3+4+C4,5):=M5(I,5);
CASE
IF M5(I,5)<0 THEN
M5(I,5):=(-1)*M5(I,5);
MRES(I+C1+C2+C3+4+C4,6):=(-
1)*0.0826*M5(I,4)*M5(I,3)*(M5(I,5)^(2))/(M5(I,2)^(5));
MRES(I+C1+C2+C3+4+C4,7):=-MRES(I+C1+C2+C3+4+C4,6)/M5(I,5);
M5(I,5):=(-1)*M5(I,5);
END;
IF M5(I,5)>=0 THEN
MRES(I+C1+C2+C3+4+C4,6):=0.0826*M5(I,4)*M5(I,3)*(M5(I,5)^(2))/(M5(I,2)^(5));
MRES(I+C1+C2+C3+4+C4,7):=MRES(I+C1+C2+C3+4+C4,6)/M5(I,5);
END;
END;
MRES(I+C1+C2+C3+4+C4,8):=0;
MRES(I+C1+C2+C3+4+C4,9):=0;
MRES(C2+C1+C3+C4+C5+5,6):=abd+MRES(I+C1+C2+C3+4+C4,6);
abd:=MRES(C2+C1+C3+C4+C5+5,6);
MRES(C2+C1+C3+C4+C5+5,7):=abd1+MRES(I+C1+C2+C3+4+C4,7);
abd1:=MRES(C2+C1+C3+C4+C5+5,7);
END;
FOR I FROM 1 TO C5 DO
MRES(I+C1+C2+C3+4+C4,8):=(-
1)*MRES(C2+C1+C3+C4+C5+5,6)/(2*MRES(C2+C1+C3+C4+C5+5,7));
END;

FOR I FROM 1 TO dis DO


aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;

FOR I FROM 1 TO dis DO


MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;

AAA:=0;
MRESP:={};

REPEAT
SUMA:=0;
FOR I FROM 1 TO T DO
FOR J FROM 1 TO dis DO
aaa:=MRES(J,1);
IF I==aaa THEN
Ma(I,5):=ABS(MRES(J,10));
Ma(I,6):=MRES(J,8)+MRES(J,9);
aq:=0.01*ABS(Ma(I,5));
IF aq>ABS(Ma(I,6)) THEN
Ma(I,7):=1;
MRES(J,12):=1;
END;
END;
END;
END;
AAA:=AAA+1;
FOR I FROM 1 TO dis DO
MRES(I,11):=MRES(I,1);
MRES(I,13):=ABS(ABS(MRES(I,8))+ABS(MRES(I,9)));
MRES(I,14):=0.01*ABS(MRES(I,10));
IF MRES(I,12)==1 THEN
SUMA:=SUMA+1;
END;
END;
MRESP(AAA):=MRES;
IF SUMA<dis-C THEN
FOR I FROM 1 TO dis DO
MRES(I,5):=MRES(I,10);
MRES(I,6):=0;
MRES(I,7):=0;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(I,10):=0;
MRES(I,11):=0;
MRES(I,12):=0;
MRES(I,13):=0;
MRES(I,14):=0;
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
CASE
IF MRES(I,5)<0 THEN
MRES(I,5):=(-1)*MRES(I,5);
MRES(I,6):=-0.0826*MRES(I,4)*MRES(I,3)*(MRES(I,5)^(2))/(MRES(I,2)^(5));
MRES(I,7):=-MRES(I,6)/MRES(I,5);
MRES(I,5):=(-1)*MRES(I,5);
END;
IF MRES(I,5)>=0 THEN
MRES(I,6):=0.0826*MRES(I,4)*MRES(I,3)*(MRES(I,5)^(2))/(MRES(I,2)^(5));
MRES(I,7):=MRES(I,6)/MRES(I,5);
END;
END;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(2*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
CASE
IF MRES(I+C1+1,5)<0 THEN
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
MRES(I+C1+1,6):=(-
1)*0.0826*MRES(I+C1+1,4)*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(2))/(MRES(I+C1
+1,2)^(5));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/MRES(I+C1+1,5);
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
END;
IF MRES(I+C1+1,5)>=0 THEN
MRES(I+C1+1,6):=0.0826*MRES(I+C1+1,4)*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(
2))/(MRES(I+C1+1,2)^(5));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/MRES(I+C1+1,5);
END;
END;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(2*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
CASE
IF MRES(I+C1+C2+2,5)<0 THEN
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,6):=(-
1)*0.0826*MRES(I+C1+C2+2,4)*MRES(I+C1+C2+2,3)*(MRES(I+C1+C2+2,5)^(2))/
(MRES(I+C1+C2+2,2)^(5));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
END;
IF MRES(I+C1+C2+2,5)>=0 THEN
MRES(I+C1+C2+2,6):=0.0826*MRES(I+C1+C2+2,4)*MRES(I+C1+C2+2,3)*(MRES
(I+C1+C2+2,5)^(2))/(MRES(I+C1+C2+2,2)^(5));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
END;
END;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(2*MRES(C2+C1+C3+3,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C4 DO
CASE
IF MRES(I+C1+C2+C3+3,5)<0 THEN
MRES(I+C1+C2+C3+3,5):=(-1)*MRES(I+C1+C2+C3+3,5);
MRES(I+C1+C2+C3+3,6):=(-
1)*0.0826*MRES(I+C1+C2+C3+3,4)*MRES(I+C1+C2+C3+3,3)*(MRES(I+C1+C2+
C3+3,5)^(2))/(MRES(I+C1+C2+C3+3,2)^(5));
MRES(I+C1+C2+C3+3,7):=-MRES(I+C1+C2+C3+3,6)/MRES(I+C1+C2+C3+3,5);
MRES(I+C1+C2+C3+3,5):=(-1)*MRES(I+C1+C2+C3+3,5);
END;
IF MRES(I+C1+C2+C3+3,5)>=0 THEN
MRES(I+C1+C2+C3+3,6):=0.0826*MRES(I+C1+C2+C3+3,4)*MRES(I+C1+C2+C3+
3,3)*(MRES(I+C1+C2+C3+3,5)^(2))/(MRES(I+C1+C2+C3+3,2)^(5));
MRES(I+C1+C2+C3+3,7):=MRES(I+C1+C2+C3+3,6)/MRES(I+C1+C2+C3+3,5);
END;END;
MRES(C2+C1+C3+C4+4,6):=abd+MRES(I+C1+C2+C3+3,6);
abd:=MRES(C2+C1+C3+C4+4,6);
MRES(C2+C1+C3+C4+4,7):=abd1+MRES(I+C1+C2+C3+3,7);
abd1:=MRES(C2+C1+C3+C4+4,7);
END;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,8):=(-
1)*MRES(C2+C1+C3+C4+4,6)/(2*MRES(C2+C1+C3+C4+4,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C5 DO
CASE
IF MRES(I+C1+C2+C3+4+C4,5)<0 THEN
MRES(I+C1+C2+C3+4+C4,5):=(-1)*MRES(I+C1+C2+C3+4+C4,5);
MRES(I+C1+C2+C3+4+C4,6):=(-
1)*0.0826*MRES(I+C1+C2+C3+4+C4,4)*MRES(I+C1+C2+C3+4+C4,3)*(MRES(I+
C1+C2+C3+4+C4,5)^(2))/(MRES(I+C1+C2+C3+4+C4,2)^(5));
MRES(I+C1+C2+C3+4+C4,7):=-
MRES(I+C1+C2+C3+4+C4,6)/MRES(I+C1+C2+C3+4+C4,5);
MRES(I+C1+C2+C3+4+C4,5):=(-1)*MRES(I+C1+C2+C3+4+C4,5);
END;
IF MRES(I+C1+C2+C3+4+C4,5)>=0 THEN
MRES(I+C1+C2+C3+4+C4,6):=0.0826*MRES(I+C1+C2+C3+4+C4,4)*MRES(I+C1+
C2+C3+4+C4,3)*(MRES(I+C1+C2+C3+4+C4,5)^(2))/(MRES(I+C1+C2+C3+4+C4,2)
^(5));
MRES(I+C1+C2+C3+4+C4,7):=MRES(I+C1+C2+C3+4+C4,6)/MRES(I+C1+C2+C3+
4+C4,5);
END;
END;
MRES(C2+C1+C3+C4+C5+5,6):=abd+MRES(I+C1+C2+C3+4+C4,6);
abd:=MRES(C2+C1+C3+C4+C5+5,6);
MRES(C2+C1+C3+C4+C5+5,7):=abd1+MRES(I+C1+C2+C3+4+C4,7);
abd1:=MRES(C2+C1+C3+C4+C5+5,7);
END;
FOR I FROM 1 TO C5 DO
MRES(I+C1+C2+C3+4+C4,8):=(-
1)*MRES(C2+C1+C3+C4+C5+5,6)/(2*MRES(C2+C1+C3+C4+C5+5,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;

END;
UNTIL SUMA==dis-C;
END;

IF C==6 THEN
C1:=CAS.SIZE(T1);
M1:=MAKEMAT(0,C1,5);
C2:=CAS.SIZE(T2);
M2:=MAKEMAT(0,C2,5);
C3:=CAS.SIZE(T3);
M3:=MAKEMAT(0,C3,5);
C4:=CAS.SIZE(T4);
M4:=MAKEMAT(0,C4,5);
C5:=CAS.SIZE(T5);
M5:=MAKEMAT(0,C5,5);
C6:=CAS.SIZE(T6);
M6:=MAKEMAT(0,C6,5);
FOR J FROM 1 TO C1 DO
TUB1:=T1(J);
M1(J):=Ma(TUB1);
END;
M1:=EDITMAT(M1,{"CIRCUITO
I",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C2 DO
TUB1:=T2(J);
M2(J):=Ma(TUB1);
END;
M2:=EDITMAT(M2,{"CIRCUITO
II",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C3 DO
TUB1:=T3(J);
M3(J):=Ma(TUB1);
END;
M3:=EDITMAT(M3,{"CIRCUITO
III",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C4 DO
TUB1:=T4(J);
M4(J):=Ma(TUB1);
END;
M4:=EDITMAT(M4,{"CIRCUITO
IV",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C5 DO
TUB1:=T5(J);
M5(J):=Ma(TUB1);
END;
M5:=EDITMAT(M5,{"CIRCUITO
V",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
FOR J FROM 1 TO C6 DO
TUB1:=T6(J);
M6(J):=Ma(TUB1);
END;
M6:=EDITMAT(M6,{"CIRCUITO
VI",{},{"TUBO","DIAMETRO(pulg)","LONG(Km)","CH ","Qo"," "}});
dis:=C1+C2+C3+C4+C5+C6+6;
MRES:=MAKEMAT(0,dis,10);
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
MRES(I,1):=M1(I,1);
MRES(I,2):=M1(I,2);
MRES(I,3):=M1(I,3);
MRES(I,4):=M1(I,4);
MRES(I,5):=M1(I,5);
CASE
IF M1(I,5)<0 THEN
M1(I,5):=(-1)*M1(I,5);
MRES(I,6):=-0.0826*M1(I,4)*M1(I,3)*(M1(I,5)^(2))/(M1(I,2)^(5));
MRES(I,7):=-MRES(I,6)/M1(I,5);
M1(I,5):=(-1)*M1(I,5);
END;
IF M1(I,5)>=0 THEN
MRES(I,6):=0.0826*M1(I,4)*M1(I,3)*(M1(I,5)^(2))/(M1(I,2)^(5));
MRES(I,7):=MRES(I,6)/M1(I,5);
END;
END;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(2*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,1):=M2(I,1);
MRES(I+C1+1,2):=M2(I,2);
MRES(I+C1+1,3):=M2(I,3);
MRES(I+C1+1,4):=M2(I,4);
MRES(I+C1+1,5):=M2(I,5);
CASE
IF M2(I,5)<0 THEN
M2(I,5):=(-1)*M2(I,5);
MRES(I+C1+1,6):=(-1)*0.0826*M2(I,4)*M2(I,3)*(M2(I,5)^(2))/(M2(I,2)^(5));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/M2(I,5);
M2(I,5):=(-1)*M2(I,5);
END;
IF M2(I,5)>=0 THEN
MRES(I+C1+1,6):=0.0826*M2(I,4)*M2(I,3)*(M2(I,5)^(2))/(M2(I,2)^(5));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/M2(I,5);
END;
END;
MRES(I+C1+1,8):=0;
MRES(I+C1+1,9):=0;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(2*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,1):=M3(I,1);
MRES(I+C1+C2+2,2):=M3(I,2);
MRES(I+C1+C2+2,3):=M3(I,3);
MRES(I+C1+C2+2,4):=M3(I,4);
MRES(I+C1+C2+2,5):=M3(I,5);
CASE
IF M3(I,5)<0 THEN
M3(I,5):=(-1)*M3(I,5);
MRES(I+C1+C2+2,6):=(-1)*0.0826*M3(I,4)*M3(I,3)*(M3(I,5)^(2))/(M3(I,2)^(5));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/M3(I,5);
M3(I,5):=(-1)*M3(I,5);
END;
IF M3(I,5)>=0 THEN
MRES(I+C1+C2+2,6):=0.0826*M3(I,4)*M3(I,3)*(M3(I,5)^(2))/(M3(I,2)^(5));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/M3(I,5);
END;
END;
MRES(I+C1+C2+2,8):=0;
MRES(I+C1+C2+2,9):=0;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(2*MRES(C2+C1+C3+3,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,1):=M4(I,1);
MRES(I+C1+C2+C3+3,2):=M4(I,2);
MRES(I+C1+C2+C3+3,3):=M4(I,3);
MRES(I+C1+C2+C3+3,4):=M4(I,4);
MRES(I+C1+C2+C3+3,5):=M4(I,5);
CASE
IF M4(I,5)<0 THEN
M4(I,5):=(-1)*M4(I,5);
MRES(I+C1+C2+C3+3,6):=(-
1)*0.0826*M4(I,4)*M4(I,3)*(M4(I,5)^(2))/(M4(I,2)^(5));
MRES(I+C1+C2+C3+3,7):=-MRES(I+C1+C2+C3+3,6)/M4(I,5);
M4(I,5):=(-1)*M4(I,5);
END;
IF M4(I,5)>=0 THEN
MRES(I+C1+C2+C3+3,6):=0.0826*M4(I,4)*M4(I,3)*(M4(I,5)^(2))/(M4(I,2)^(5));
MRES(I+C1+C2+C3+3,7):=MRES(I+C1+C2+C3+3,6)/M4(I,5);
END;END;
MRES(I+C1+C2+C3+3,8):=0;
MRES(I+C1+C2+C3+3,9):=0;
MRES(C2+C1+C3+C4+4,6):=abd+MRES(I+C1+C2+C3+3,6);
abd:=MRES(C2+C1+C3+C4+4,6);
MRES(C2+C1+C3+C4+4,7):=abd1+MRES(I+C1+C2+C3+3,7);
abd1:=MRES(C2+C1+C3+C4+4,7);
END;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,8):=(-
1)*MRES(C2+C1+C3+C4+4,6)/(2*MRES(C2+C1+C3+C4+4,7));
END;

abd:=0;abd1:=0;
FOR I FROM 1 TO C5 DO
MRES(I+C1+C2+C3+4+C4,1):=M5(I,1);
MRES(I+C1+C2+C3+4+C4,2):=M5(I,2);
MRES(I+C1+C2+C3+4+C4,3):=M5(I,3);
MRES(I+C1+C2+C3+4+C4,4):=M5(I,4);
MRES(I+C1+C2+C3+4+C4,5):=M5(I,5);
CASE
IF M5(I,5)<0 THEN
M5(I,5):=(-1)*M5(I,5);
MRES(I+C1+C2+C3+4+C4,6):=(-
1)*0.0826*M5(I,4)*M5(I,3)*(M5(I,5)^(2))/(M5(I,2)^(5));
MRES(I+C1+C2+C3+4+C4,7):=-MRES(I+C1+C2+C3+4+C4,6)/M5(I,5);
M5(I,5):=(-1)*M5(I,5);
END;
IF M5(I,5)>=0 THEN
MRES(I+C1+C2+C3+4+C4,6):=0.0826*M5(I,4)*M5(I,3)*(M5(I,5)^(2))/(M5(I,2)^(5));
MRES(I+C1+C2+C3+4+C4,7):=MRES(I+C1+C2+C3+4+C4,6)/M5(I,5);
END;
END;
MRES(I+C1+C2+C3+4+C4,8):=0;
MRES(I+C1+C2+C3+4+C4,9):=0;
MRES(C2+C1+C3+C4+C5+5,6):=abd+MRES(I+C1+C2+C3+4+C4,6);
abd:=MRES(C2+C1+C3+C4+C5+5,6);
MRES(C2+C1+C3+C4+C5+5,7):=abd1+MRES(I+C1+C2+C3+4+C4,7);
abd1:=MRES(C2+C1+C3+C4+C5+5,7);
END;
FOR I FROM 1 TO C5 DO
MRES(I+C1+C2+C3+4+C4,8):=(-
1)*MRES(C2+C1+C3+C4+C5+5,6)/(2*MRES(C2+C1+C3+C4+C5+5,7));
END;

abd:=0;abd1:=0;
FOR I FROM 1 TO C6 DO
MRES(I+C1+C2+C3+5+C4+C5,1):=M6(I,1);
MRES(I+C1+C2+C3+5+C4+C5,2):=M6(I,2);
MRES(I+C1+C2+C3+5+C4+C5,3):=M6(I,3);
MRES(I+C1+C2+C3+5+C4+C5,4):=M6(I,4);
MRES(I+C1+C2+C3+5+C4+C5,5):=M6(I,5);
CASE
IF M6(I,5)<0 THEN
M6(I,5):=(-1)*M6(I,5);
MRES(I+C1+C2+C3+5+C4+C5,6):=(-
1)*0.0826*M6(I,4)*M6(I,3)*(M6(I,5)^(2))/(M6(I,2)^(5));
MRES(I+C1+C2+C3+5+C4+C5,7):=-MRES(I+C1+C2+C3+5+C4+C5,6)/M6(I,5);
M6(I,5):=(-1)*M6(I,5);
END;
IF M6(I,5)>=0 THEN
MRES(I+C1+C2+C3+5+C4+C5,6):=0.0826*M6(I,4)*M6(I,3)*(M6(I,5)^(2))/(M6(I,2)^
(5));
MRES(I+C1+C2+C3+5+C4+C5,7):=MRES(I+C1+C2+C3+5+C4+C5,6)/M6(I,5);
END;
END;
MRES(I+C1+C2+C3+5+C4+C5,8):=0;
MRES(I+C1+C2+C3+5+C4+C5,9):=0;
MRES(C2+C1+C3+C4+C5+C6+6,6):=abd+MRES(I+C1+C2+C3+5+C4+C5,6);
abd:=MRES(C2+C1+C3+C4+C5+C6+6,6);
MRES(C2+C1+C3+C4+C5+C6+6,7):=abd1+MRES(I+C1+C2+C3+5+C4+C5,7);
abd1:=MRES(C2+C1+C3+C4+C5+C6+6,7);
END;
FOR I FROM 1 TO C6 DO
MRES(I+C1+C2+C3+5+C4+C5,8):=(-
1)*MRES(C2+C1+C3+C4+C5+C6+6,6)/(2*MRES(C2+C1+C3+C4+C5+C6+6,7));
END;

FOR I FROM 1 TO dis DO


aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;

FOR I FROM 1 TO dis DO


MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
AAA:=0;
MRESP:={};

REPEAT
SUMA:=0;
FOR I FROM 1 TO T DO
FOR J FROM 1 TO dis DO
aaa:=MRES(J,1);
IF I==aaa THEN
Ma(I,5):=ABS(MRES(J,10));
Ma(I,6):=MRES(J,8)+MRES(J,9);
aq:=0.01*ABS(Ma(I,5));
IF aq>ABS(Ma(I,6)) THEN
Ma(I,7):=1;
MRES(J,12):=1;
END;
END;
END;
END;
AAA:=AAA+1;
FOR I FROM 1 TO dis DO
MRES(I,11):=MRES(I,1);
MRES(I,13):=ABS(ABS(MRES(I,8))+ABS(MRES(I,9)));
MRES(I,14):=0.01*ABS(MRES(I,10));
IF MRES(I,12)==1 THEN
SUMA:=SUMA+1;
END;
END;
MRESP(AAA):=MRES;
IF SUMA<dis-C THEN
FOR I FROM 1 TO dis DO
MRES(I,5):=MRES(I,10);
MRES(I,6):=0;
MRES(I,7):=0;
MRES(I,8):=0;
MRES(I,9):=0;
MRES(I,10):=0;
MRES(I,11):=0;
MRES(I,12):=0;
MRES(I,13):=0;
MRES(I,14):=0;
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C1 DO
CASE
IF MRES(I,5)<0 THEN
MRES(I,5):=(-1)*MRES(I,5);
MRES(I,6):=-0.0826*MRES(I,4)*MRES(I,3)*(MRES(I,5)^(2))/(MRES(I,2)^(5));
MRES(I,7):=-MRES(I,6)/MRES(I,5);
MRES(I,5):=(-1)*MRES(I,5);
END;
IF MRES(I,5)>=0 THEN
MRES(I,6):=0.0826*MRES(I,4)*MRES(I,3)*(MRES(I,5)^(2))/(MRES(I,2)^(5));
MRES(I,7):=MRES(I,6)/MRES(I,5);
END;
END;
MRES(C1+1,6):=abd+MRES(I,6);
abd:=MRES(C1+1,6);
MRES(C1+1,7):=abd1+MRES(I,7);
abd1:=MRES(C1+1,7);
END;
FOR I FROM 1 TO C1 DO
MRES(I,8):=(-1)*MRES(C1+1,6)/(2*MRES(C1+1,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C2 DO
CASE
IF MRES(I+C1+1,5)<0 THEN
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
MRES(I+C1+1,6):=(-
1)*0.0826*MRES(I+C1+1,4)*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(2))/(MRES(I+C1
+1,2)^(5));
MRES(I+C1+1,7):=-MRES(I+C1+1,6)/MRES(I+C1+1,5);
MRES(I+C1+1,5):=(-1)*MRES(I+C1+1,5);
END;
IF MRES(I+C1+1,5)>=0 THEN
MRES(I+C1+1,6):=0.0826*MRES(I+C1+1,4)*MRES(I+C1+1,3)*(MRES(I+C1+1,5)^(
2))/(MRES(I+C1+1,2)^(5));
MRES(I+C1+1,7):=MRES(I+C1+1,6)/MRES(I+C1+1,5);
END;
END;
MRES(C2+C1+2,6):=abd+MRES(I+C1+1,6);
abd:=MRES(C2+C1+2,6);
MRES(C2+C1+2,7):=abd1+MRES(I+C1+1,7);
abd1:=MRES(C2+C1+2,7);
END;
FOR I FROM 1 TO C2 DO
MRES(I+C1+1,8):=(-1)*MRES(C2+C1+2,6)/(2*MRES(C2+C1+2,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C3 DO
CASE
IF MRES(I+C1+C2+2,5)<0 THEN
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,6):=(-
1)*0.0826*MRES(I+C1+C2+2,4)*MRES(I+C1+C2+2,3)*(MRES(I+C1+C2+2,5)^(2))/
(MRES(I+C1+C2+2,2)^(5));
MRES(I+C1+C2+2,7):=-MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
MRES(I+C1+C2+2,5):=(-1)*MRES(I+C1+C2+2,5);
END;
IF MRES(I+C1+C2+2,5)>=0 THEN
MRES(I+C1+C2+2,6):=0.0826*MRES(I+C1+C2+2,4)*MRES(I+C1+C2+2,3)*(MRES
(I+C1+C2+2,5)^(2))/(MRES(I+C1+C2+2,2)^(5));
MRES(I+C1+C2+2,7):=MRES(I+C1+C2+2,6)/MRES(I+C1+C2+2,5);
END;
END;
MRES(C2+C1+C3+3,6):=abd+MRES(I+C1+C2+2,6);
abd:=MRES(C2+C1+C3+3,6);
MRES(C2+C1+C3+3,7):=abd1+MRES(I+C1+C2+2,7);
abd1:=MRES(C2+C1+C3+3,7);
END;
FOR I FROM 1 TO C3 DO
MRES(I+C1+C2+2,8):=(-1)*MRES(C2+C1+C3+3,6)/(2*MRES(C2+C1+C3+3,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C4 DO
CASE
IF MRES(I+C1+C2+C3+3,5)<0 THEN
MRES(I+C1+C2+C3+3,5):=(-1)*MRES(I+C1+C2+C3+3,5);
MRES(I+C1+C2+C3+3,6):=(-
1)*0.0826*MRES(I+C1+C2+C3+3,4)*MRES(I+C1+C2+C3+3,3)*(MRES(I+C1+C2+
C3+3,5)^(2))/(MRES(I+C1+C2+C3+3,2)^(5));
MRES(I+C1+C2+C3+3,7):=-MRES(I+C1+C2+C3+3,6)/MRES(I+C1+C2+C3+3,5);
MRES(I+C1+C2+C3+3,5):=(-1)*MRES(I+C1+C2+C3+3,5);
END;
IF MRES(I+C1+C2+C3+3,5)>=0 THEN
MRES(I+C1+C2+C3+3,6):=0.0826*MRES(I+C1+C2+C3+3,4)*MRES(I+C1+C2+C3+
3,3)*(MRES(I+C1+C2+C3+3,5)^(2))/(MRES(I+C1+C2+C3+3,2)^(5));
MRES(I+C1+C2+C3+3,7):=MRES(I+C1+C2+C3+3,6)/MRES(I+C1+C2+C3+3,5);
END;END;
MRES(C2+C1+C3+C4+4,6):=abd+MRES(I+C1+C2+C3+3,6);
abd:=MRES(C2+C1+C3+C4+4,6);
MRES(C2+C1+C3+C4+4,7):=abd1+MRES(I+C1+C2+C3+3,7);
abd1:=MRES(C2+C1+C3+C4+4,7);
END;
FOR I FROM 1 TO C4 DO
MRES(I+C1+C2+C3+3,8):=(-
1)*MRES(C2+C1+C3+C4+4,6)/(2*MRES(C2+C1+C3+C4+4,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C5 DO
CASE
IF MRES(I+C1+C2+C3+4+C4,5)<0 THEN
MRES(I+C1+C2+C3+4+C4,5):=(-1)*MRES(I+C1+C2+C3+4+C4,5);
MRES(I+C1+C2+C3+4+C4,6):=(-
1)*0.0826*MRES(I+C1+C2+C3+4+C4,4)*MRES(I+C1+C2+C3+4+C4,3)*(MRES(I+
C1+C2+C3+4+C4,5)^(2))/(MRES(I+C1+C2+C3+4+C4,2)^(5));
MRES(I+C1+C2+C3+4+C4,7):=-
MRES(I+C1+C2+C3+4+C4,6)/MRES(I+C1+C2+C3+4+C4,5);
MRES(I+C1+C2+C3+4+C4,5):=(-1)*MRES(I+C1+C2+C3+4+C4,5);
END;
IF MRES(I+C1+C2+C3+4+C4,5)>=0 THEN
MRES(I+C1+C2+C3+4+C4,6):=0.0826*MRES(I+C1+C2+C3+4+C4,4)*MRES(I+C1+
C2+C3+4+C4,3)*(MRES(I+C1+C2+C3+4+C4,5)^(2))/(MRES(I+C1+C2+C3+4+C4,2)
^(5));
MRES(I+C1+C2+C3+4+C4,7):=MRES(I+C1+C2+C3+4+C4,6)/MRES(I+C1+C2+C3+
4+C4,5);
END;
END;
MRES(C2+C1+C3+C4+C5+5,6):=abd+MRES(I+C1+C2+C3+4+C4,6);
abd:=MRES(C2+C1+C3+C4+C5+5,6);
MRES(C2+C1+C3+C4+C5+5,7):=abd1+MRES(I+C1+C2+C3+4+C4,7);
abd1:=MRES(C2+C1+C3+C4+C5+5,7);
END;
FOR I FROM 1 TO C5 DO
MRES(I+C1+C2+C3+4+C4,8):=(-
1)*MRES(C2+C1+C3+C4+C5+5,6)/(2*MRES(C2+C1+C3+C4+C5+5,7));
END;
abd:=0;abd1:=0;
FOR I FROM 1 TO C6 DO
CASE
IF MRES(I+C1+C2+C3+5+C4+C5,5)<0 THEN
MRES(I+C1+C2+C3+5+C4+C5,5):=(-1)*MRES(I+C1+C2+C3+5+C4+C5,5);
MRES(I+C1+C2+C3+5+C4+C5,6):=(-
1)*0.0826*MRES(I+C1+C2+C3+5+C4+C5,4)*MRES(I+C1+C2+C3+5+C4+C5,3)*(M
RES(I+C1+C2+C3+5+C4+C5,5)^(2))/(MRES(I+C1+C2+C3+5+C4+C5,2)^(5));
MRES(I+C1+C2+C3+5+C4+C5,7):=-
MRES(I+C1+C2+C3+5+C4+C5,6)/MRES(I+C1+C2+C3+5+C4+C5,5);
MRES(I+C1+C2+C3+5+C4+C5,5):=(-1)*MRES(I+C1+C2+C3+5+C4+C5,5);
END;
IF MRES(I+C1+C2+C3+5+C4+C5,5)>=0 THEN
MRES(I+C1+C2+C3+5+C4+C5,6):=0.0826*MRES(I+C1+C2+C3+5+C4+C5,4)*MRE
S(I+C1+C2+C3+5+C4+C5,3)*(MRES(I+C1+C2+C3+5+C4+C5,5)^(2))/(MRES(I+C1+
C2+C3+5+C4+C5,2)^(5));
MRES(I+C1+C2+C3+5+C4+C5,7):=MRES(I+C1+C2+C3+5+C4+C5,6)/MRES(I+C1+
C2+C3+5+C4+C5,5);
END;
END;
MRES(C2+C1+C3+C4+C5+C6+6,6):=abd+MRES(I+C1+C2+C3+5+C4+C5,6);
abd:=MRES(C2+C1+C3+C4+C5+C6+6,6);
MRES(C2+C1+C3+C4+C5+C6+6,7):=abd1+MRES(I+C1+C2+C3+5+C4+C5,7);
abd1:=MRES(C2+C1+C3+C4+C5+C6+6,7);
END;
FOR I FROM 1 TO C6 DO
MRES(I+C1+C2+C3+5+C4+C5,8):=(-
1)*MRES(C2+C1+C3+C4+C5+C6+6,6)/(2*MRES(C2+C1+C3+C4+C5+C6+6,7));
END;
FOR I FROM 1 TO dis DO
aa:=MRES(I,1);
FOR J FROM 1 TO dis DO
bb:=MRES(J,1);
IF aa==bb AND IJ THEN
MRES(I,9):=(-1)*MRES(J,8);
END;
END;
END;
FOR I FROM 1 TO dis DO
MRES(I,10):=MRES(I,5)+MRES(I,8)+MRES(I,9);
END;
END;
UNTIL SUMA==dis-C;
END;
END;
END;

Grafico()
BEGIN
LOCAL SALIR,MM1;
SALIR:=0;
DIMGROB_P(G1,320,240);
DIMGROB_P(G9,1000,600);
RECT_P(G9);

TEXTOUT_P("TUB D(pulg) L(Km) CH Qo hfo(m) hfo/Qo Q


Q",G9,2,5,1,RGB(25,200,255));
TEXTOUT_P("QN=Qo-Q TUB ",G9,610-40,5,1,RGB(25,200,255));
TEXTOUT_P("ERROR Q/100 ",G9,700,5,1,RGB(25,200,255));
TEXTOUT_P("PRIMERA ITERACION",G9,50,2+(15*dis+50)*(H-
1),2,RGB(255,0,50));
TEXTOUT_P("CIRCUITO I",G9,25,20,1,RGB(25,0,255));
MM1:=MRESP(graf);
BBB:=1;
ITE:={"II","III","IV","V","VI","VII","VIII","IX","X","XI","XII","XIII","XIV","XV"};
FOR I FROM 1 TO dis DO
IF MRES(I,1)==0 THEN
IF I<dis THEN
TEXTOUT_P("CIRCUITO "+ITE(BBB),G9,25,I*15+23,1,RGB(25,0,255));
BBB:=BBB+1;
END;
TEXTOUT_P("",G9,138,I*15+17,4,RGB(255,7,200));
END;
END;
IF AAA==1 THEN
RECT_P(G9,320+40,27+(15*dis+50),320+40+50,dis*15+36,RGB(148,226,209));
TEXTOUT_P("RESULTADO
FINAL",G9,230,2,2,RGB(158,24,210),255,RGB(244,36,216));
END;
FOR I FROM 1 TO dis DO
FOR J FROM 1 TO 14 DO
IF J<6 THEN
IF MRES(I,J)0 THEN
TEXTOUT_P(ROUND(MM1(I,J),5),G9,(J-
1)*27+7,I*15+23,1,RGB(0,0,0),100,RGB(255,255,255));
END;
END;
IF 6<=J<12 THEN
IF MRES(I,J)0 THEN
TEXTOUT_P(MM1(I,J),G9,J*100-
433,I*15+23,1,RGB(0,0,0),100,RGB(255,255,255));
END;
END;
IF J>12 THEN
IF MRES(I,J)0 THEN
TEXTOUT_P(MM1(I,J),G9,J*100-
613,I*15+23,1,RGB(0,0,0),100,RGB(255,255,255));
END;
END;
END;
END;
REPEAT

BLIT_P(G0,G9);
TACTIL();
SALIR:=SALIR+1;
UNTIL SALIR=1;
SALIR:=0;
END;

TACTIL()
BEGIN
LOCAL n;
LOCAL w=1000,h=600;
LOCAL mx0=0,my0=0,is=0,ig=0,mx=0,my=0,ms=0;
LOCAL sw:=320,sh:=215;
LOCAL x:=0,y:=0,d:=0,ld:=0;
LOCAL ss:=1,sf:=0,spu:=1.01,spd:=1.1;
LOCAL ssu:=1,ssd:=1,ssl:=1,ssr:=1;
LOCAL z:=1,zp:=1.01,zmin=MIN(MIN(sw/w,sh/h),1),zmax=4,zold=1,zw=w,zh=h;
LOCAL tk:={7,2,8,12};
LOCAL td:={0,0,0,0};
LOCAL ts:={1,1,1,1};
LOCAL tt:={0,0,0,0};
LOCAL i,dsh:=0,dsv:=0,dh:=0,wh=1;
LOCAL toque1,tacxx1,tacyy1,tacc;
LOCAL strh3=16,strh2=14,strh1=12,yt=1;
LOCAL x0=100, x1=0;
LOCAL x5=sw-5-x0-1;
LOCAL x2=x1+(x5-x1)*5/9;
LOCAL x3=x1+(x2-x1)/4,x4=x2+(x5-x2)/3;
n:=SIZE(MRESP);
RECT_P(0,0,320,25,RGB(46,120,159));

RECT_P(285,2,317,22,#FFFFFFh,#00BFFFh);
RECT_P(240,2,270,22,#FFFFFFh,RGB(31,188,144));
RECT_P(200,2,230,22,#FFFFFFh,RGB(31,188,144));
RECT_P(160,2,190,22,#FFFFFFh,RGB(31,188,144));
RECT_P(120,2,150,22,#FFFFFFh,RGB(31,188,144));
TEXTOUT_P("ITERACION N ",5,5,2,RGB(255,255,255));
TEXTOUT_P("Men ",287,7,1,RGB(255,255,255));

TEXTOUT_P("P ",132,5,3,RGB(255,255,255));
TEXTOUT_P(" ",168,-2,7,RGB(255,255,255));
TEXTOUT_P(" ",208,-2,7,RGB(255,255,255));
TEXTOUT_P("F ",252,5,3,RGB(255,255,255));
TEXTOUT_P(graf,90,0,5,RGB(200,200,200));
IF graf==15 THEN
TEXTOUT_P(graf,G9,200,3,2,RGB(240,2,120));
END;
x:=0;y:=0;
REPEAT
tt:={0,0,0,0};
dsh:=0;dsv:=0;

mx:=MOUSE(0);my:=MOUSE(1);ms:=MOUSE(4);
IF ms=2 THEN
IF NOT ig THEN ig:=1;mx0:=MOUSE(2);my0:=MOUSE(3); END;
IF mx>mx0 THEN tt(1):=tt(1)+(mx-mx0)/z; ELSE tt(3):=tt(3)+(mx0-mx)/z; END;
IF my>my0 THEN tt(2):=tt(2)+(my-my0)/z; ELSE tt(4):=tt(4)+(my0-my)/z; END;
mx0:=mx;my0:=my;dsh:=1;dsv:=1;
ELSE
ig:=0;
END;
IF ms=3 THEN
IF is THEN
IF (mx>sw/2 and mx>mx0) or (mx<sw/2 and mx<mx0) THEN z:=z*zp; END;
IF (mx>sw/2 and mx<mx0) or (mx<sw/2 and mx>mx0) THEN z:=z/zp; END;
ELSE
is:=1; mx0:=mx; my0:=my;
END;
ELSE
is:=0;
END;

IF ISKEYDOWN(5) THEN z:=1; END;


IF z>zmax THEN z:=zmax; END;
IF z<zmin THEN z:=zmin; END;
IF z<1 and zold>1 or z>1 and zold<1 THEN z:=1; END;
IF z<zold or z>zold THEN zw:=w*z; zh:=h*z; x:=x+sw/2/zold-sw/2/z; y:=y+sh/2/zold-
sh/2/z; zold:=z; dsh:=1; dsv:=1; END;

FOR i FROM 1 TO 4 DO
IF ISKEYDOWN(tk(i)) THEN
IF i MOD 2=1 THEN dsh:=1; ELSE dsv:=1; END;
td(i):=1;
ts(i):=MAX(ts(i)*spu,1);
tt(i):=tt(i)+MAX(ts(i)/z,1);
ELSE
ts(i):=MAX(ts(i)/spd,1);
IF ts(i)>1 THEN
IF i MOD 2=1 THEN dsh:=1; ELSE dsv:=1; END;
END;
END;
END;
x:=MAX(MIN(x-tt(1)+tt(3),w-sw/z),0); y:=MAX(MIN(y-tt(2)+tt(4),h-sh/z),0);
BLIT_P(G1,-FP(x)*z,-FP(y)*z,sw+(CEILING(x+sw/z)-
(x+sw/z))*z,sh+(CEILING(y+sh/z)-
(y+sh/z))*z,G9,FLOOR(x),FLOOR(y),CEILING(x+sw/z),CEILING(y+sh/z));

IF zw<sw THEN RECT_P(G1,zw+1,0,sw-1,sh-1,#FFFFFFh,#FFFFFFh); END;


IF zw>sw and dsh THEN
RECT_P(G1,0,sh-1,sw-5,sh-5,0,#FFFFFFh);
RECT_P(G1,2+(sw-9)*x/w,sh-3,2+(sw-9)*x/w+(sw-9)*sw/zw,sh-3,0,0);
END;
IF zh<sh THEN RECT_P(G1,0,zh+1,sw-1,sh-1,#FFFFFFh,#FFFFFFh); END;
IF zh>sh and dsv THEN
RECT_P(G1,sw-1,0,sw-5,sh-5,0,#FFFFFFh);
RECT_P(G1,sw-3,2+(sh-9)*y/h,sw-3,2+(sh-9)*y/h+(sh-9)*sh/h/z,0,0);
END;
IF(dh) THEN BLIT_P(G1,x0,1,G3); END;
BLIT_P(G0,0,25,sw,sh+25,G1,0,0,sw,sh);

WAIT(-1);
toque1:=MOUSE();
IF SIZE(toque1(1)) THEN
tacxx1:=toque1(1,1);
tacyy1:=toque1(1,2);
tacc:=toque1(1,5);
END;

IF tacc==0 THEN
IF 240 <= tacxx1 <= 270 AND 0 <= tacyy1 <= 25 THEN
RECT_P(240,2,270,22,RGB(39,130,85),RGB(156,221,189));

graf:=n;

Grafico();
END;

IF 200 <= tacxx1 <= 230 AND 0 <= tacyy1 <= 25 THEN
RECT_P(200,2,230,22,RGB(39,130,85),RGB(156,221,189));
graf:=graf+1;
IF graf>n THEN
graf:=n;
END;

Grafico();

END;

IF 160 <= tacxx1 <= 190 AND 0 <= tacyy1 <= 25 THEN
RECT_P(160,2,190,22,RGB(39,130,85),RGB(156,221,189));
graf:=graf-1;
IF graf<1 THEN
graf:=1;
END;

Grafico();
END;

IF 120 <= tacxx1 <= 150 AND 0 <= tacyy1 <= 25 THEN
RECT_P(120,2,150,22,RGB(39,130,85),RGB(156,221,189));
graf:=1;

Grafico();
END;

IF 285 <= tacxx1 <= 320 AND 0 <= tacyy1 <= 25 THEN
RECT_P(285,2,317,22,RGB(39,130,85),RGB(156,221,189));
sallll:=1;
END;
END;

UNTIL sallll==1;

END;

Вам также может понравиться