ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Programación del Método del trapecio.


Enviado por   •  29 de Marzo de 2016  •  Tarea  •  3.626 Palabras (15 Páginas)  •  291 Visitas

Página 1 de 15

[pic 1]


Plantilla principal del Programa-Método del trapecio.

                     [pic 2][pic 3]

Botón principal Resolver

//Evalúa todos los paréntesis en caso de faltar uno aparecerá el siguiente mensaje

ON ERROR w=0

w=1

x=1

ecua=ALLTRIM(thisform.text1.value)

z=&ecua

ON ERROR

IF w=0

        =MESSAGEBOX("Revisa tu ecuación",16,"Error")

        RETURN

ENDIF

        

//Buca todas la “X”        

IF "X"$THISFORM.TEXT1.VALUE  

//Formaliza la tabla

        DIMENSION array_resultados(thisform.n.Value+1,3)

//Realiza la operación, para saber el valor de h=b-a/n

        h=(thisform.b.Value-thisform.a.Value)/thisform.n.Value

//Realiza un FOR de 0 hasta lo que mida n (Numero de intervalos), //guardando los valores en la tabla

        FOR count_gusa=0 TO thisform.n.Value

                array_resultados(count_gusa+1,1)=count_gusa

                array_resultados(count_gusa+1,2)=thisform.a.Value + (count_gusa*h)

//Evalúa los resultados obtenidos en (1,2) y los mete en la //ecuación, dejando los resultados en (1,3)                

                x=array_resultados(count_gusa+1,2)

                ecua=ALLTRIM(thisform.text1.value)

                array_resultados(count_gusa+1,3)=&ecua

                

        NEXT

//Obtenidos los resultados en (1,3), el programa busca el primer y //el ultimo valor de la tabla, guardándolos en fa y fb //respectivamente.

        fa=array_resultados(1,3)

        fb=array_resultados(thisform.n.Value+1,3)

//Busca los otros resultados sumándolos entre sí, guardándolo en //fs.

        fs=0

        FOR count_gusa=2 TO thisform.n.Value

                fs=fs+array_resultados(count_gusa,3)

        

//Después fs será multiplicado por 2, enseguida será sumado con fa //y fb, guardando el valor en fs, a continuación tomando el valor //de h y dividiéndolo entre dos será multiplicando por el valor de //fs, el valor obtenido será guardado en fs

NEXT

        fs=fs*2

        fs=fa+fb+fs

        fs=(h/2)*fs

//El resultado obtenido será redondeado a 10 decimales

        thisform.text4.Value=ROUND(fs,10)

//El siguiente codigo sera para copear los valores de a, b, la //ecuación ingresada en el cuadro de texto y el resultado obtenido //en fs        

        thisform.label7.Caption=ALLTRIM(STR(thisform.b.Value))

        thisform.label8.Caption=ALLTRIM(STR(thisform.a.Value))

        thisform.label9.Caption=ALLTRIM(thisform.text2.Value)+")dx="+ALLTRIM(STR(thisform.text4.Value,20,10))+"  U^2"

*****

//A continuación se presenta el código de la gráfica, tabulando //todos los resultados obtenidos de la tabla (1, 2) y (1, 3)

        CLOSE DATABASES

        SELECT 0

        USE vfpgraph

        thisform.oleboundcontrol1.controlsource="olegraph"

        SELECT vfpgraph

        #DEFINE CRLF CHR(13)+CHR(10)

        #DEFINE TAB CHR(9)

        lcData= " " + TAB + "F(x)" + CRLF

        FOR t=1 TO ALEN(array_RESULTADOS,1)

          lcData = lcData + alltrim(STR(array_RESULTADOS(t,2),20,16))

          lcData = lcData + TAB

          lcData = lcData + ALLTRIM(STR(array_RESULTADOS(t,3),20,16)) + CRLF

        next

        go 1

        APPEND GENERAL olegraph DATA lcData

        go 1

        thisform.oleboundcontrol1.Refresh

        thisform.oleboundcontrol1.visible=.t.

        thisform.oleboundcontrol1.Refresh

...

Descargar como (para miembros actualizados) txt (12 Kb) pdf (427 Kb) docx (419 Kb)
Leer 14 páginas más »
Disponible sólo en Clubensayos.com