Public Class Form1
Public course, grade As String
Public gpa, creditHours, totalGradePoints, totalCreditHours, gradePoints, gradePointsFactor As Double
Private Sub Button1_Click( sender As System.Object , e As System.EventArgs ) Handles Button1.Click
Do
course = InputBox( " Enter course name or EXIT to exit " )
If course.ToUpper = "EXIT" Then
Exit Do
End If
creditHours = InputBox( "Enter credit hours for this course" )
totalCreditHours += creditHours
grade = InputBox( "Enter course grade" )
grade = grade.ToUpper
gradePointsFactor = grades( )
gradePoints = creditHours * gradePointsFactor
totalGradePoints += gradePoints
ListBox1.Items .Add ( course & " " & creditHours & " " & grade & " " & gradePoints)
Loop
gpa = totalGradePoints / totalCreditHours
ListBox1.Items .Add ( " " )
ListBox1.Items .Add ( " " )
ListBox1.Items .Add ( "Your total course hours were " & totalCreditHours & ", and your total grade points were " & totalGradePoints)
ListBox1.Items .Add ( "Your GPA is " & gpa)
End Sub
Function grades( )
'Dim GradePoints As Double
If grade = "A" Then
gradePointsFactor = 4
ElseIf grade = "A-" Then
gradePointsFactor = 3.7
ElseIf grade = "B+" Then
gradePointsFactor = 3.33
ElseIf grade = "B" Then
gradePointsFactor = 3
ElseIf grade = "B-" Then
gradePointsFactor = 2.7
ElseIf grade = "C+" Then
gradePointsFactor = 2.3
ElseIf grade = "C" Then
gradePointsFactor = 2
ElseIf grade = "C-" Then
gradePointsFactor = 1.7
ElseIf grade = "D+" Then
gradePointsFactor = 1.3
ElseIf grade = "D" Then
gradePointsFactor = 1
ElseIf grade = "D-" Then
gradePointsFactor = 0.7
ElseIf grade = "F" Then
gradePointsFactor = 0
End If
Return gradePointsFactor
End Function
End Class
UHVibGljIENsYXNzIEZvcm0xCiAgIFB1YmxpYyBjb3Vyc2UsIGdyYWRlIEFzIFN0cmluZwogICBQdWJsaWMgZ3BhLCBjcmVkaXRIb3VycywgdG90YWxHcmFkZVBvaW50cywgdG90YWxDcmVkaXRIb3VycywgZ3JhZGVQb2ludHMsIGdyYWRlUG9pbnRzRmFjdG9yIEFzIERvdWJsZQogICBQcml2YXRlIFN1YiBCdXR0b24xX0NsaWNrKHNlbmRlciBBcyBTeXN0ZW0uT2JqZWN0LCBlIEFzIFN5c3RlbS5FdmVudEFyZ3MpIEhhbmRsZXMgQnV0dG9uMS5DbGljawogICAgICBEbwogICAgICAgICBjb3Vyc2UgPSBJbnB1dEJveCgiIEVudGVyIGNvdXJzZSBuYW1lIG9yIEVYSVQgdG8gZXhpdCAiKQogICAgICAgICBJZiBjb3Vyc2UuVG9VcHBlciA9ICJFWElUIiBUaGVuCiAgICAgICAgICAgIEV4aXQgRG8KICAgICAgICAgRW5kIElmCiAgICAgICAgIGNyZWRpdEhvdXJzID0gSW5wdXRCb3goIkVudGVyIGNyZWRpdCBob3VycyBmb3IgdGhpcyBjb3Vyc2UiKQogICAgICAgICB0b3RhbENyZWRpdEhvdXJzICs9IGNyZWRpdEhvdXJzCiAgICAgICAgIGdyYWRlID0gSW5wdXRCb3goIkVudGVyIGNvdXJzZSBncmFkZSIpCiAgICAgICAgIGdyYWRlID0gZ3JhZGUuVG9VcHBlcgogICAgICAgICBncmFkZVBvaW50c0ZhY3RvciA9IGdyYWRlcygpCiAgICAgICAgIGdyYWRlUG9pbnRzID0gY3JlZGl0SG91cnMgKiBncmFkZVBvaW50c0ZhY3RvcgogICAgICAgICB0b3RhbEdyYWRlUG9pbnRzICs9IGdyYWRlUG9pbnRzCiAgICAgICAgIExpc3RCb3gxLkl0ZW1zLkFkZChjb3Vyc2UgJiAiICIgJiBjcmVkaXRIb3VycyAmICIgIiAmIGdyYWRlICYgIiAiICYgZ3JhZGVQb2ludHMpCiAgICAgIExvb3AKICAgICAgZ3BhID0gdG90YWxHcmFkZVBvaW50cyAvIHRvdGFsQ3JlZGl0SG91cnMKICAgICAgTGlzdEJveDEuSXRlbXMuQWRkKCIgIikKICAgICAgTGlzdEJveDEuSXRlbXMuQWRkKCIgIikKICAgICAgTGlzdEJveDEuSXRlbXMuQWRkKCJZb3VyIHRvdGFsIGNvdXJzZSBob3VycyB3ZXJlICIgJiB0b3RhbENyZWRpdEhvdXJzICYgIiwgYW5kIHlvdXIgdG90YWwgZ3JhZGUgcG9pbnRzIHdlcmUgIiAmIHRvdGFsR3JhZGVQb2ludHMpCiAgICAgIExpc3RCb3gxLkl0ZW1zLkFkZCgiWW91ciBHUEEgaXMgIiAmIGdwYSkKICAgRW5kIFN1YgogICBGdW5jdGlvbiBncmFkZXMoKQogICAgICAnRGltIEdyYWRlUG9pbnRzIEFzIERvdWJsZSAKICAgICAgSWYgZ3JhZGUgPSAiQSIgVGhlbgogICAgICAgICBncmFkZVBvaW50c0ZhY3RvciA9IDQKICAgICAgRWxzZUlmIGdyYWRlID0gIkEtIiBUaGVuCiAgICAgICAgIGdyYWRlUG9pbnRzRmFjdG9yID0gMy43CiAgICAgIEVsc2VJZiBncmFkZSA9ICJCKyIgVGhlbgogICAgICAgICBncmFkZVBvaW50c0ZhY3RvciA9IDMuMzMKICAgICAgRWxzZUlmIGdyYWRlID0gIkIiIFRoZW4KICAgICAgICAgZ3JhZGVQb2ludHNGYWN0b3IgPSAzCiAgICAgIEVsc2VJZiBncmFkZSA9ICJCLSIgVGhlbgogICAgICAgICBncmFkZVBvaW50c0ZhY3RvciA9IDIuNwogICAgICBFbHNlSWYgZ3JhZGUgPSAiQysiIFRoZW4KICAgICAgICAgZ3JhZGVQb2ludHNGYWN0b3IgPSAyLjMKICAgICAgRWxzZUlmIGdyYWRlID0gIkMiIFRoZW4KICAgICAgICAgZ3JhZGVQb2ludHNGYWN0b3IgPSAyCiAgICAgIEVsc2VJZiBncmFkZSA9ICJDLSIgVGhlbgogICAgICAgICBncmFkZVBvaW50c0ZhY3RvciA9IDEuNwogICAgICBFbHNlSWYgZ3JhZGUgPSAiRCsiIFRoZW4KICAgICAgICAgZ3JhZGVQb2ludHNGYWN0b3IgPSAxLjMKICAgICAgRWxzZUlmIGdyYWRlID0gIkQiIFRoZW4KICAgICAgICAgZ3JhZGVQb2ludHNGYWN0b3IgPSAxCiAgICAgIEVsc2VJZiBncmFkZSA9ICJELSIgVGhlbgogICAgICAgICBncmFkZVBvaW50c0ZhY3RvciA9IDAuNwogICAgICBFbHNlSWYgZ3JhZGUgPSAiRiIgVGhlbgogICAgICAgICBncmFkZVBvaW50c0ZhY3RvciA9IDAKICAgICAgRW5kIElmCiAgICAgIFJldHVybiBncmFkZVBvaW50c0ZhY3RvcgogICBFbmQgRnVuY3Rpb24KRW5kIENsYXNzCg==
compilation info
Visual Basic.Net Compiler version 0.0.0.5914 (Mono 2.4.2 - r)
Copyright (C) 2004-2008 Rolf Bjarne Kvinge. All rights reserved.
/home/L58qOR/prog.vb (25,12) : Warning VBNC42024: Function without an 'As' clause; Object return type assumed.
/home/L58qOR/prog.vb (4,94) : Error VBNC30451: Could not resolve the name 'Button1'
/home/L58qOR/prog.vb (17,19) : Error VBNC30451: Could not resolve the name 'ListBox1'
/home/L58qOR/prog.vb (20,16) : Error VBNC30451: Could not resolve the name 'ListBox1'
/home/L58qOR/prog.vb (21,16) : Error VBNC30451: Could not resolve the name 'ListBox1'
/home/L58qOR/prog.vb (22,16) : Error VBNC30451: Could not resolve the name 'ListBox1'
/home/L58qOR/prog.vb (23,16) : Error VBNC30451: Could not resolve the name 'ListBox1'
There were 6 errors and 1 warnings.
Compilation took 00:00:01.0422730
stdout