Red de conocimiento informático - Problemas con los teléfonos móviles - Ajuste de mínimos cuadrados lineal VB

Ajuste de mínimos cuadrados lineal VB

Cree un nuevo formulario, agregue el texto 1, el comando 1 y la imagen 1.

Subcomando privado 1_Click()

Si Text1. Text = " "Luego salga de la suscripción

Dim x() es único, y() es único, cnt es entero

Dim xmax es único, xmin es único, ymax es único , ymin es único

Dim p() es una cadena, z() es una cadena

Dim xyh es único, xh es único, yh es único, xph es único, k es único, b es único

p = Split(Text1. Text, "/")

Para i = 0 al límite inferior (p)

Si p( I)<>""Entonces

z = Split(p(i), "*")

Si UBound(z) = 1, entonces

Si IsNumeric(z(0)) y IsNumeric(z(1)) entonces

Si cnt = 0, entonces xmax = z(0):xmin = z(0):ymax = z (1):ymin = z(1)

Si xmax & ltz(0) entonces xmax = z(0)

Si xmin & gtz(0) entonces xmin = z( 0)

Si ymax & ltz(1) entonces ymax = z(1)

Si ymin & gtz(1) entonces ymin = z(1)

xyh = xyh+z(0)* z(1):xh = xh+z(0):yh = yh+z(1):xph = xph+z(0)^ 2

ReDim retiene x(cuenta), y(cuenta)

x(CNT)= z(0):y(CNT)= z(1):CNT = CNT+1

Terminará si...

Terminará si...

Terminará si...

Entonces

Imagen 1. Cls

Imagen 1. DrawWidth = 1

Si xmax = xmin y ymax = ymin, entonces

MsgBox "No se puede instalar un solo punto"

Entonces ElseIf xmax = xmin

Imagen 1. Escala (xmin * 0,5, ymax+0,2 * (ymax-ymin))-(xmin * 1,5, ymin - 0,2 * (ymax - ymin))

Semana con guión izquierdo xmin * 0,5, ymax + 0,2 * (ymax - ymin), xmin * 1,5, ymin - 0,2 * (ymax - ymin)

Imagen 1. Línea (xmax, ymax + 0.2 * (ymax - ymin))-(xmax, ymin - 0.2 * (ymax - ymin)), vbBlue

Entonces si no ymax = ymin

Imagen 1. Número de decimales (xmin - 0,2 * (xmax - xmin), ymax * 1,5)-(xmax+0,2 * (xmax-xmin), ymin * 0,5)

Semana con guión izquierdo xmin - 0,2 * (xmax - xmin), ymax * 1,5, xmax + 0,2 * (xmax - xmin), ymin * 0,5

Imagen 1.

Línea (xmin - 0.2 * (xmax - xmin), ymax)-(xmax + 0.2 * (xmax - xmin), ymax), vbBlue

Otros

Imagen 1. Escala (xmin - 0,2 * (xmax - xmin), ymax+0,2 *(ymax-ymin))-(xmax+0,2 *(xmax-xmin), ymin - 0,2 * (ymax - ymin))

Subíndice izquierdo xmin - 0,2 * (xmax - xmin), ymax + 0,2 * (ymax - ymin), xmax + 0,2 * (xmax - xmin), ymin - 0,2 * (ymax - ymin)

k =(xyh-(xh * yh)/CNT)/(xph-xh ^ 2/CNT)

b = yh / cnt - k * xh / cnt

Imagen 1 . Línea (xmin - 0,2 * (xmax - xmin), k * (xmin - 0,2 * (xmax - xmin)) + b) - (xmax + 0,2 * (xmax - xmin), k * (xmax + 0,2 * (xmax - xmin)) + b), vbBlue

Terminará si...

Imagen 1. Ancho de trazado = 5

Para i = 0 a cnt - 1

Imagen 1. PSet (x(i), y(i)), vbRed

Entonces

Text1. SetFocus

Conector final

Subform privado_Activate()

Texto1. SetFocus

Conector final

Subform_Load privado()

Texto1. texto = " "

Texto1. ToolTipText = "Las coordenadas horizontales y verticales están separadas por un símbolo de multiplicación *, y los puntos están separados por un símbolo de división /. Por ejemplo: 100*100/200*200 "

Comando 1. Caption="Dibujo"

Imagen 1. AutoRedraw = True

Conector final

Subtexto privado 1 _ KeyPress(KeyAscii es un número entero)

Si no (IsNumeric(Chr(KeyAscii)) o KeyAscii = 8 o KeyAscii = 42 o KeyAscii = 45 o KeyAscii = 46 o KeyAscii = 47), luego KeyAscii = 0

Conector final

Ciclo de coordenadas de función (ByVal x1 es único, y1 es simple, x2 es simple, y2 es simple)

Para i = x1 + (x2 - x1) / 5 a x2 pasos (x2 - x1) / 5

Imagen 1. Línea (i, y2+100 *(y 1-y2)/imagen 1. altura)-(i, y2)

Imagen 1. ActualX = I-250 *(x2-x 1)/imagen 1. Ancho

Imagen 1. ActualY = y2+350 *(y 1-y2)/imagen 1. Altura

Foto 1. Imprime I

Entonces

Para i = y2 + (y1 - y2) / 5 pasos para y1 (y1 - y2) / 5

Imagen 1. Línea (x1, I)-(x 1+100 *(x2-x 1)/imagen 1. Ancho, I)

Imagen 1.

ActualX = x 1+150 *(x2-x 1)/imagen 1. Ancho

Imagen 1. ActualY = I+80 *(y 1-y2)/imagen 1. Altura

Foto 1. Imprimir I

Luego

Finalizar función