Está en la página 1de 3

Hoja de corrida

Anexo A
Diferencias de sintaxis de algunos estatutos entre versiones de QBASIC y QB64 para Windows 7
Competencia instrumental: Habilidad bsica de manejo de la computadora
Dependiendo de la infraestructura de cmputo donde se realicen las competencias se deben
tener en consideracin las observaciones que se detallan ms adelante, esto es debido a que se
han detectado algunas situaciones al ejecutar los programas FelMath@. Por ejemplo:
o QB64 para ROMBERG no puede resolver el ejercicio 2 de la prctica 6.10
o QB64 para ROMBFOUR presenta ligera diferencia al generar los coeficientes de Fourier
de la prctica 6.11
o QB64 para POLEGEND, no soporta la instruccin de la prctica 6.12
DO WHILE POLINOMIO(A(), ZL, A, N) * POLINOMIO(A(), ZL + .05, A, N) >= 0
o QB64 para RUNGEKUT presenta diferencias significativas en la prctica 7.7
En la primera edicin de Mtodos Numricos por computadora, la codificacin de los
programas de cmputo se muestran escritos en QBASIC, a los cuales se les deber modificar la
sintaxis correspondiente solo a los estatutos que no son compatibles o no estn definidos en el
mbito de QB64 versin 0.942; Las funciones deben ser introducidas a travs de New Function
del men Edit y eliminar o comentar las DEF FNF(). Los cambios se muestran a continuacin:
Nombre del
programa
BEATTIE

FANNING

Sintaxis en
QBASIC
DECLARE SUB LEE.VECTOR.DATA (X!(), I, N)
CALL LEE.VECTORDATA(P(), 0, M)
SUB LEE.VECTORDATA (X(), I, N)
DEF FNF (CF, RE) = -.4 + 1.74 * LOG(RE * SQR(CF)) SQR(1 / CF)

DELTAPRE

DEF FNF (ROUE, D, RE, FM) = -2 * LOG(ROUE / (3.7 *


D) + 2.51 / (RE * SQR(FM))) / LOG(10) - 1 /
SQR(FM)

GRAEFFE

DECLARE SUB LEE.N.DATA (L, X!(), N)


CALL LEE.N.DATA(1, A(), NP1)
SUB LEE.N.DATA (L, X(), N)
DECLARE SUB LEE.N.DATA (L, X!(), N)
CALL LEE.N.DATA(3, A(), NP3)
SUB LEE.N.DATA (L, X(), N)
DECLARE SUB LEE.MATRIZ.DATA (MATRIZ!(), N, M)

BAIRSTOW

ESCALA
G_GAUSS

CALL LEE.MATRIZ.DATA(A(), N, M)
SUB LEE.MATRIZ.DATA (MATRIZ(), N, M)

Felmath@

Sintaxis en
QB64
DECLARE SUB LEE.VECTORDATA (X!(), I, N)
CALL LEE.VECTORDATA(P(), 0, M)
SUB LEE.VECTORDATA (X(), I, N)
FUNCTION FNF (CF, RE)
FNF = -.4 + 1.74 * LOG(RE * SQR(CF))
SQR(1 / CF)
END FUNCTION
FUNCTION FNF (ROUE, D, RE, FM)
FNF = -2 * LOG(ROUE / (3.7 * D) + 2.51 / (RE
* SQR(FM))) / LOG(10) - 1 / SQR(FM)
END FUNCTION
DECLARE SUB LEE.NDATA (L, X!(), N)
CALL LEE.NDATA(1, A(), NP1)
SUB LEE.NDATA (L, X(), N)
DECLARE SUB LEE.NDATA (L, X!(), N)
CALL LEE.NDATA(3, A(), NP3)
SUB LEE.NDATA (L, X(), N)
DECLARE SUB LEE.MATRIZDATA (MATRIZ!(),
N, M)
CALL LEE.MATRIZDATA(A(), N, M)
SUB LEE.MATRIZDATA (MATRIZ(), N, M)

Ing. Flix Daz Gutirrez

Hoja de corrida
Nombre del
programa
G_JORDAN

Sintaxis en
QBASIC
DECLARE SUB LEE.MATRIZ.DATA (MATRIZ!(), N, M)

JACOBI

CALL LEE.MATRIZDATA(A(), N, NPLUSM)


SUB LEE.MATRIZ.DATA (MATRIZ(), N, M)
DEF FNF1 (X1, X2) = SIN(X1 * X2) - X2 / (2 * PI)

DEF FNF2 (X1, X2) = 2 * PI * X1 - (PI - .25) * (EXP(2 *


X1 - 1) - 1)

G_SEIDEL

DECLARE SUB LEE.N.DATA (L, X!(), N)


DECLARE SUB LEE.MATRIZ.DATA (MATRIZ!(), N, M)

Sintaxis en
QB64
DECLARE SUB LEE.MATRIZDATA (MATRIZ!(),
N, M)
CALL LEE.MATRIZDATA(A(), N, NPLUSM)
SUB LEE.MATRIZDATA (MATRIZ(), N, M)
FUNCTION FNF1 (X1, X2)
FNF1 = SIN(X1 * X2) - X2 / (2 * PI)
END FUNCTION
FUNCTION FNF2 (X1, X2)
FNF2 = 2 * PI * X1 - (PI - .25) * (EXP(2 * X1 1) - 1)
END FUNCTION
DECLARE SUB LEE.NDATA (L, X!(), N)
DECLARE SUB LEE.MATRIZDATA (MATRIZ!(),
N, M)

CALL LEE.MATRIZ.DATA(A(), N, M)
CALL LEE.N.DATA(1, X(), N)

CALL LEE.MATRIZDATA(A(), N, M)
CALL LEE.NDATA(1, X(), N)

SUB LEE.N.DATA (L, X(), N)


SUB LEE.MATRIZ.DATA (MATRIZ(), N, M)
DECLARE SUB LEE.MATRIZ.DATA (MATRIZ!(), N, M)
DECLARE SUB LEE.N.DATA (L, X!(), N)

SUB LEE.NDATA (L, X(), N)


SUB LEE.MATRIZDATA (MATRIZ(), N, M)
DECLARE SUB LEE.MATRIZDATA (MATRIZ!(),
N, M)
DECLARE SUB LEE.NDATA (L, X!(), N)

CALL LEE.N.DATA(1, VZERO(), N)


CALL LEE.MATRIZ.DATA(A(), N, N)

CALL LEE.NDATA(1, VZERO(), N)


CALL LEE.MATRIZDATA(A(), N, N)

ILIN2DIM

SUB LEE.MATRIZ.DATA (MATRIZ(), N, M)


SUB LEE.N.DATA (L, X(), N)
DECLARE SUB LEE.MATRIZ.DATA (MATRIZ!(), N, M)

DERIV1Y2

CALL LEE.MATRIZ.DATA(F(), N, M)
SUB LEE.MATRIZ.DATA (MATRIZ(), N, M)
DEF FNFX (X) = 6 * X ^ 2 - X ^ 3

TRAPECIO

DEF FNF (X) = 1 / X ^ 1.1996

SIMPSON

DEF FNX (X) = SQR(1 + COS(X) ^ 2)

ROMBERG

DEF FNX (X) = EXP(X)

ROMBFOUR

DEF FNX (X) = X * SIN(M * X) / 3.1415926#

SUB LEE.MATRIZDATA (MATRIZ(), N, M)


SUB LEE.NDATA (L, X(), N)
DECLARE SUB LEE.MATRIZDATA (MATRIZ!(),
N, M)
CALL LEE.MATRIZDATA(F(), N, M)
SUB LEE.MATRIZDATA (MATRIZ(), N, M)
FUNCTION FNFX (X)
FNFX = 6 * X ^ 2 - X ^ 3
END FUNCTION
FUNCTION FNF (X)
FNF = 1 / X ^ 1.1996
END FUNCTION
FUNCTION FNX (X)
FNX = SQR(1 + COS(X) ^ 2)
END FUNCTION
FUNCTION FNX (X)
FNX = EXP(X)
END FUNCTION
FUNCTION FNX (X)
FNX = X * SIN(M * X) / 3.1415926#
END FUNCTION
Usar grado de precision de 0.0000001

EIGENVAL

Se usa grado de precisin de 0.00001

Felmath@

Ing. Flix Daz Gutirrez

Hoja de corrida
Nombre del
programa
POLEGEND
LEGENDRE

TAYLOR3

Sintaxis en
QBASIC
DO WHILE POLINOMIO(A(), ZL, A, N) *
POLINOMIO(A(), ZL + .05, A, N) >= 0
DECLARE SUB LEE.VECTOR.DATA (X!(), I, N)
CALL LEE.VECTOR.DATA(NPUNTOS(), I, N)
CALL LEE.VECTOR.DATA(LLAVE(), 0, N)
CALL LEE.VECTOR.DATA(Z(), 0, N)
CALL LEE.VECTOR.DATA(PESO(), 0, N)
SUB LEE.VECTOR.DATA (X(), I, N)
DEF FNFXY (X, Y) = (2 * X * Y)

DEF FNDF (X, Y) = 2 * X * FNFXY(X, Y) + 2 * Y

EULERS1

DEF FNFXY (X, Y) = 6 - Y / 100

EULERM1

DEF FNFXY (X, Y) = 6 - 2 * Y / (300 + X)

EULERM2

DEF FNN1 (X, Y, T) = Y

DEF FNN2 (X, Y, T) = -8 * Y - 16 * X

RUNGEKSY

Sintaxis en
QB64
No soportado
DECLARE SUB LEE.VECTORDATA (X!(), I, N)
CALL LEE.VECTORDATA(NPUNTOS(), I, N)
CALL LEE.VECTORDATA(LLAVE(), 0, N)
CALL LEE.VECTORDATA(Z(), 0, N)
CALL LEE.VECTORDATA(PESO(), 0, N)
SUB LEE.VECTORDATA (X(), I, N)
FUNCTION FNFXY (X, Y)
FNFXY = (2 * X * Y)
END FUNCTION
FUNCTION FNDF (X, Y)
FNDF = 2 * X * FNFXY(X, Y) + 2 * Y
END FUNCTION
FUNCTION FNFXY (X, Y)
FNFXY = 6 - Y / 100
END FUNCTION
FUNCTION FNFXY (X, Y)
FNFXY = 6 - 2 * Y / (300 + X)
END FUNCTION
FUNCTION FNN1 (X, Y, T)
FNN1 = Y
END FUNCTION

DECLARE SUB LEE.VECTOR.DATA (X!(), I, N)

FUNCTION FNN2 (X, Y, T)


FNN2 = -8 * Y - 16 * X
END FUNCTION
DECLARE SUB LEE.VECTORDATA (X!(), I, N)

CALL LEE.VECTOR.DATA(G(), 0, N)

CALL LEE.VECTORDATA(G(), 0, N)

SUB LEE.VECTOR.DATA (X(), I, N)

SUB LEE.VECTORDATA (X(), I, N)

La segunda edicin ya vendr con el cdigo nativo de QB64 e incluir


nuevas potencias adicionadas al lenguaje.

Felmath@

Ing. Flix Daz Gutirrez

También podría gustarte