Universidad de Carabobo
Facultad de Ingeniería
Departamento de Computación
Cátedra: Computación II
Prof. Mayela Delgado
Introducción al Uso de Subprogramas
Module Module1
'Desarrollar un programa que permita determinar el lapso transcurrido entre dos mediciones
'de tiempo y expresarlo en horas, minutos y segundos.
'Validar que la medición inicial sea menor o igual que la inicial.
'Validar cada dato introducido: horas, minutos y segundos.
'Manejar las horas en formato de 24 horas.
'Desarrollar los siguientes subprogramas:
'1) Subprograma para la lectura de una medición de tiempo (horas, minutos, segundos)
'2) Subprograma que convierte en segundos una medición de tiempo (horas, minutos, segundos)
'3) Subprograma que determina si las horas introducidas son válidas ( >=0 y <=23)
'4) Subprograma que determina si los minutos/segundos introducidos son válidos ( >=0 y <=59)
'5) Subprograma que convierte en segundos una medición de tiempo (horas, minutos, segundos)
'6) Subprograma que calcula la diferencia entre dos valores enteros
'7) Subprograma que convierte una cantidad de segundos en el formato horas, minutos y
segundos
'Subprograma para la lectura de una medición de tiempo (horas, minutos, segundos)
Sub Lectura(ByRef H As Integer, ByRef M As Integer, ByRef S As Integer)
[Link]("Horas:")
H = [Link]
[Link]("Minutos:")
M = [Link]
[Link]("Segundos:")
S = [Link]
End Sub
'Subprograma que convierte en segundos una medición de tiempo (horas, minutos, segundos)
Function Conv_Hora(ByVal HH As Integer, ByVal MM As Integer, ByVal SS As Integer) As
Integer
Conv_Hora = HH * 3600 + MM * 60 + SS
End Function
'Subprograma que determina si las horas introducidas son válidas ( >=0 y <=23)
Function Valida_Horas(ByVal H As Integer) As Boolean
If H >= 0 And H <= 23 Then
Valida_Horas = True
Else
Valida_Horas = False
End If
End Function
Sub Main()
Dim Horas1, Horas2, Minutos1, Minutos2, Segundos1, Segundos2 As Integer
Dim Continuar As Boolean = True
[Link]("Hora de Inicio")
[Link]("==============")
Lectura(Horas1, Minutos1, Segundos1)
If Not Valida_Horas(Horas1) Then
[Link]()
[Link]("Valor introducido en el datos Horas es incorrecto")
Continuar = False
End If
If Continuar Then
[Link]() 'Deja una línea en blanco
[Link]("Hora de Fin")
[Link]("==============")
Lectura(Horas2, Minutos2, Segundos2)
End If
[Link]()
End Sub
End Module