Переписать код с VB 6. Расписание пар - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Здравствуйте можете помочь, нужно переписать код написанный на VB 6.0
Листинг программы
  1. Dim classstart(5), classend(5) As String
  2. Dim i, difference As Integer
  3. Private Sub Form_Load()
  4. classstart(1) = "8:30:00": classend(1) = "10:05:00"
  5. classstart(2) = "10:15:00": classend(2) = "11:50:00"
  6. classstart(3) = "12:10:00": classend(3) = "13:45:00"
  7. classstart(4) = "13:55:00": classend(4) = "15:30:00"
  8. classend(0) = "00:00:00": classstart(5) = "15:40:00"
  9. Form1.Caption = Form1.Caption + Str(Date)
  10. End Sub
  11. Private Sub Timer1_Timer()
  12. Label1.Caption = Time
  13. If Time > TimeValue(classend(4)) Then Label2.Caption = " Занятия окончены. ": Label3.Caption = "До встречи!": Form1.Caption = "You may sleep " + Str(Date)
  14. For i = 1 To 4
  15. If Time > TimeValue(classstart(i)) And Time < TimeValue(classend(i)) Then
  16. difference = (Hour(classend(i)) * 60 + Minute(classend(i))) - (Hour(Time) * 60 + Minute(Time))
  17. Label2.Caption = "Сейчас идет " + Str(i) + " пара"
  18. Label3.Caption = "До конца пары еще" + Str(difference) + " мин."
  19. End If
  20. Next
  21. For i = 0 To 4
  22. If Time > TimeValue(classend(i)) And Time < TimeValue(classstart(i + 1)) Then
  23. difference = (Hour(classstart(i + 1)) * 60 + Minute(classstart(i + 1))) - (Hour(Time) * 60 + Minute(Time))
  24. Label2.Caption = "Перерыв": Label3.Caption = "До начала" + Str(i + 1) + " пары уже" + Str(difference) + " мин."
  25. End If
  26. Next
  27. End Sub

Решение задачи: «Переписать код с VB 6. Расписание пар»

textual
Листинг программы
  1. Public Class Form1
  2.     Dim LList As New List(Of String) 'Список начала каждой пары
  3.     Dim LLength As Integer = 95 'Продолжительность пары в минутах
  4.  
  5.     Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  6.         LList.Add("08:30") '1 пара
  7.         LList.Add("10:15") '2 пара
  8.         LList.Add("12:10") '3 пара
  9.         LList.Add("13:55") '4 пара
  10.         LList.Add("15:40") '5 пара
  11.  
  12.         Timer1.Interval = 1000 'Интервал таймера = 1 секунде
  13.         Timer1.Start() 'Запускаем таймер
  14.     End Sub
  15.  
  16.     Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
  17.         Label1.Text = TimeOfDay 'Отображаем текущее время
  18.  
  19.         Select Case TimeOfDay 'Проверка на начало и окончание учебного дня
  20.             Case CDate("00:00:00") To CDate(LList(0))
  21.                 Label2.Text = "Занятия еще не начались." : Label3.Text = "Наберитесь терпения!" : Exit Sub
  22.             Case CDate(LList(LList.Count - 1)).AddMinutes(LLength) To CDate("23:59:59")
  23.                 Label2.Text = "Занятия окончены. " : Label3.Text = "До встречи!" : Exit Sub
  24.         End Select
  25.  
  26.         For i = 0 To LList.Count - 1
  27.             Dim LStart As DateTime = CDate(LList(i)) : Dim LEnd As DateTime = LStart.AddMinutes(LLength)
  28.             Dim LNext As DateTime : If i = LList.Count - 1 Then LNext = CDate(LList(0)) Else LNext = CDate(LList(i + 1))
  29.             Select Case TimeOfDay
  30.                 Case LStart To LEnd 'Вывод текущей пары и времени до ее окончания
  31.                     Label2.Text = String.Format("Сейчас идет {0}-я пара.", i + 1)
  32.                     Label3.Text = String.Format("До конца осталось {0}", LEnd.Subtract(TimeOfDay))
  33.                 Case LEnd To LNext 'Вывод момента перерыва и времени до начала следующей пары
  34.                     Label2.Text = "Сейчас перерыв..."
  35.                     Label3.Text = String.Format("До начала осталось {0}", LNext.Subtract(TimeOfDay))
  36.             End Select
  37.         Next
  38.     End Sub
  39. End Class

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы