Matriz de Amitancia hp50g e KRON
Matriz de Amitancia hp50g e KRON
Matriz de Amitancia hp50g e KRON
%%HP: T(0)A(D)F(.);
CLLCD
"Reduo de Kron
ENGENHARIA-IFG
ISEP 7Periodo" MSGBOX
-> matriz
"Digite a quantidade
de barras"
""
INPUT OBJ
'quantidadedebarras' STO
quantidadedebarras IDN 1 CON (0 0) * 'RESPOSTA' STO
RESPOSTA
5 'SAIR' STO
1 quantidadedebarras
FOR i
"Admitancia ligando
barra 0 a barra " i STR +
""
INPUT OBJ
RESPOSTA { } i + i + GET +
RESPOSTA { } i + i + 3 ROLL PUT 'RESPOSTA' STO
NEXT
WHILE SAIR 1 >
REPEAT
"ESCOLHA UMA OPO"
{
{ "ADD IMPEDANCIA" 1 }
{ "ADD ADMITANCIA" 2 }
{ "FINALIZAR" 3 }
}
1
CHOOSE
IF
THEN
EVAL
END
DUP
IF 1 ==
THEN
"ADICIONAR IMPEDNCIA"
{
"ORIGEM"
"DESTINO"
"VALOR"
}
{ 1 0 }
{ }
{ }
INFORM
IF
THEN
ELSE
END
IF 3==
THEN
SWAP 'SAIR' 0 SWAP STO
END
END
SWAP DROP
@ADICIONAR OS SINAIS NEGATIVOS NOS TRIANGULOS
@SUPERIOR E INFERIOR DA MATRIZ
RESPOSTA 1 NEG * 'RESPOSTA' STO
1 RESPOSTA SIZE LIST 2/
FOR i
RESPOSTA { } i + i + GET NEG
RESPOSTA { } i + i + 3 ROLL PUT 'RESPOSTA' STO
NEXT
RESPOSTA
@APAGAR AS VARIAVEIS CRIADAS
DROP DROP RESPOSTA
'RESPOSTA' PURGE
'SAIR' PURGE
'quantidadedebarras' PURGE
'Inicio' PURGE
'FIM' PURGE
'Valor' PURGE