الرجاء من الاخوه المساعدة عندي واجب وضروري اسلمه بكرة
والسؤال
اكتبي برنامج بلغة فيجوال بيسك يحتوي على :
1- طبقة student تحتوي على:
متغير عام h مصفوفة (ساعات المقرر) - متغير عام course (لتخزين المقررات)
دالة record تسمح للطالب بتسجيل المقرر وساعاتة.
- يتفرع من student طبقة studcomp تحتوي على دالة record لحساب عدد الساعات التي سجلها الطالب في المقرارات المتاحة للتسجيل أم لا (الحد الأقصى لساعات التسجيل هي 20 ساعة ) فإذا تجاوزها تطلب منه حذف الساعات الزائدة و اذا لم يتجاوزها تبلغه بعدد الساعات المتبقية له ليسجلها.
- عند الضغط على زر اضافة مقرر تسمح للطالب بتسجيل المقرر اذا لم يتعدى الساعات المحدده.
2- في الدالة الرئيسية اطبعي المواد والساعات المسجلة المحددة أم لا.
3- طباعة شاشة التنفيذ..run.
من فصل الوراثة والتراكيب..
+ المشكلة كيفية تعبئة بيانات مصفوفة من textbox ..؟؟
والطباعة في الدالة الرئيسية...؟؟
الحل بس ناقص
الحل:
Public Class student
Public n As String
Public h() As Integer
Public course() As String
Public Overridable Function record(ByVal x As String, ByVal y As Integer)
Dim i As Integer
n = InputBox("enter num", "hi")
ReDim h(n)
ReDim course(n)
For i = 0 To n-1
course(i) = x
h(i) = y
Next
Return 0
End Function
End Class
Class studcomp
Inherits student
Public Overrides Function record(ByVal x As String, ByVal y As Integer)
Dim i, sum, z As Integer
n = InputBox("enter num", "hi")
For i = 0 To n - 1
sum = 0 + h(i)
Next
If sum > 20 Then
MsgBox("you need deltee hours")
Else
z = 20 - sum
MsgBox("you have free hours" & z)
End If
Return 0
End Function
End Class
Sub Main()
Dim s As New student
Dim st As New studcomp
Dim i, y As Integer
Dim n, x As String
n = InputBox("enter num", "hi")
For i = 0 To n - 1
Console.WriteLine(s.course(i), s.h(i))
Next
Console.WriteLine(st.record(x, y))
End Sub
End Module
في الزر
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim x As String
Dim y As Integer
Dim b As Boolean
x = TextBox1.Text
y = TextBox2.Text
Dim s As New student
Dim st As New studcomp
b = st.record(x, y)
If b = False Then
s.record(x, y)
End If
End Sub