El algoritmo bancario (vb) implementado por mi hermano usando vs2008 tiene numerosos errores. Solicito urgentemente correcciones a los expertos.
3:
temp(0) = h
Atenuar m como contador corto
Para m = 0 a 3
Disponible(m) = Disponible(m) - Solicitud(h, m)
Asignación(h, m) = Asignación(h, m) Solicitud (h, m)
Necesidad(h, m) = Necesidad(h, m) - Solicitud(h, m)
Siguiente
'Algoritmo de seguridad 1'
A1:
'El algoritmo de seguridad "2" encuentra el proceso de salida del proceso que satisface NEEDlt;=DISPONIBLE para los cuatro recursos
Dim c, d, loopcounter As Short
Proceso de salida tenue As Short
Dim iscorrect(4, 3) As Boolean 'Determina si los cuatro recursos satisfacen NEEDlt;=Dim canbefound As Boolean
'Determinar si se puede encontrar el recurso
Dim backcount As Short 'Devuelve un recuento del número de recursos devueltos a la búsqueda.
Count
backcount = 0
A2:
'El siguiente código se utiliza para encontrar procesos que cumplan las condiciones del problema
backcount = backcount 1
Para loopcounter = 0 a 4
Para c = 0 a 4
Para d = 0 a 3
Si es necesario (c, d) lt;= Disponible(d) Y Finalizar(c) = Falso Entonces
es correcto(c, d) = Verdadero
Si es correcto(c, 0) Y iscorrect(c , 1) And iscorrect(c, 2) And iscorrect(c, 3) = True Entonces
'Los cuatro satisfacen NECESIDAD;=DISPONIBLE
proceso de salida = c p>
canbefound = True 'Esta vez puedes encontrar un proceso
Ir a A3
Finalizar si
Else
es correcto (c, d) = Falso
Finalizar si
Siguiente paso
Siguiente paso
Siguiente paso
Siguiente paso
Si canbefound = False Entonces
iserror_Renamed = True
Ir a error3
Finalizar si
' Algoritmo de seguridad" 3" Compruebe si es seguro ejecutar el proceso indicado en 2
Dim p As Short 'contador
A3:
'Ejecutar el proceso
Para p = 0 a 3
Disponible(p) = Disponible(p) Asignación(proceso de salida, p)
Siguiente paso
Seleccione el recuento de casos
El caso es gt;
'Bucle completado, determine si se encuentra
Si canbefound = False Entonces
iserror_Renamed = Verdadero
Ir a error3
De lo contrario
Ir a A4
Finalizar si
Caso de lo contrario
fila (recuento retroactivo - 1) = proceso de salida1) = proceso de salida
Finalizar selección
Finalizar(proceso de salida) = Verdadero
Si finalizar(0) y finalizar(1) y Finish(2) And Finish(3) And Finish(4) = True Entonces
'Existe la secuencia de seguridad, lista para imprimir
Vaya a A4
De lo contrario
Ir a A2
Finalizar si
'Manejo de errores
Seleccionar caso es error
_Renamed
Caso verdadero
error1:
MsgBox("Proceso P" & errorcode1 & "Acceso ilegal al recurso No. " & errorcode2 & "Acceso ilegal al recurso No.)
Salir de Sub
error2:
MsgBox("¡¡Lo sentimos, no se encontró la secuencia de seguridad!!")
Salir del Sub
error3:
MsgBox("Desafortunadamente, la solicitud del jefe de equipo P" & temp(0) & "no se pudo cumplir y el proceso se bloquea")
Subsalir
Caso falso
'Algoritmo de seguridad "4"
A4:
Atenuar salidas como cortas
Para salidas = 0 a 4
MsgBox("Felicitaciones, se ha encontrado la secuencia de seguridad, el primer " amp; salidas 1 amp; "elemento es: P" amp ; fila(salidas) )
Siguiente
Finalizar selección
Salir Sub
error4:
MsgBox("¡¡¡El valor no puede ser nulo!!!" )
End Sub
Sub privado FORM1_FormClosing(ByVal remitente como objeto, ByVal e como System.Windows.Forms.FormClosingEventArgs) Me maneja.FormClosing(ByVal remitente como objeto, ByVal e As System.Windows.Forms.FormClosingEventArgs)
Subprivado FORM1_FormClosing(ByVal remitente como objeto, ByVal y como System.Windows.Forms.FormClosingEventArgs)FormClosing
MsgBox( "Programador: Cai Zheng QQ36553114, adiós")
Fin Sub
finalizar clase