PDA

View Full Version : گفتگو: تحلیل یک برنامه ساده محاسبه مالیات (مبتدی)



backstreet-boy
پنج شنبه 27 تیر 1387, 17:39 عصر
سلام ، برنامه ای بنویسید که شماره کارمندی ، و حقوق یک کارمند را دریافت کنه و براساس تعریف زیر مالیات شو محاسبه کنه و به خروجی بیرد .

حقوق کمتر 460000 از مالیات معاف
حقوق بین 560000 و 460000 10 درصد نسبت به مازاد



یرای یه نفر مشکلی نیست ولی مشکلی دارم اینه که شماره کارمندی رو دریافت می کنه ، پس چند تا کارمند هست ، می خواستم بدونمدر کد نویسی چه جور ارتباطی بین شماره کارمندی و حقوق یک کارمند باید برقرار کنم ، اگر کسی می دونه یه توضیحی در این مورد بده
:لبخندساده:

saman_itc
پنج شنبه 27 تیر 1387, 18:08 عصر
نیازی نیست بین حقوق و کد ارتباطی باشه

backstreet-boy
پنج شنبه 27 تیر 1387, 18:46 عصر
تنها را شناخت ما از اینکه حقوق مورد نظر مال کارمند مورد نظر ماست پس چیه ؟ این طوری چجوری بفهمیم این حقوق مال کدوم کارمند است .

salehbagheri
پنج شنبه 27 تیر 1387, 22:15 عصر
كاري نداره كه!
از طريق SQL مي توني كارهاي دلخواهت رو انجام بدي!

لازم به توضيح نيست ديگه!!!! ها!!!؟؟؟

mehrzad007
جمعه 28 تیر 1387, 10:32 صبح
فكر ميكنم اين بيشتر يك سوال يا تمرين كلاسي باشه ؟ درسته ؟ كه نيازي به بانك اطلاعاتي نداره؟
بهتره اگر اين مورد رو داريد از آرايه ها استفاده كنيد ...

linux
جمعه 28 تیر 1387, 12:55 عصر
سلام ، برنامه ای بنویسید که شماره کارمندی ، و حقوق یک کارمند را دریافت کنه و براساس تعریف زیر مالیات شو محاسبه کنه و به خروجی بیرد .

حقوق کمتر 460000 از مالیات معاف
حقوق بین 560000 و 460000 10 درصد نسبت به مازاد



یرای یه نفر مشکلی نیست ولی مشکلی دارم اینه که شماره کارمندی رو دریافت می کنه ، پس چند تا کارمند هست ، می خواستم بدونمدر کد نویسی چه جور ارتباطی بین شماره کارمندی و حقوق یک کارمند باید برقرار کنم ، اگر کسی می دونه یه توضیحی در این مورد بده
:لبخندساده:
اگر این برنامه را ویبی دات باید بنویسید ، هدف یادگیری شی گرایی هست.
پس شما یک کلاس کارمند دارید.
که
1- کد کارمندی
2- نام کارمند
3- حقوق ماهانه
و یک متد برای محاسبه مالیات
برای نگهداری اطلاعات چند کارمند باید آنها در یک list ذخیره کنید.


Public Class Employee
Private _ID As Integer
Private _Name As String
Private _salary As Integer
Public Property ID() As Integer
Get
Return _ID
End Get
Set(ByVal value As Integer)
_ID = value
End Set
End Property
Public Property Name() As String
Get
Return _Name
End Get
Set(ByVal value As String)
If Not String.IsNullOrEmpty(value) Then
_Name = value
Else
Throw New OutOfMemoryException("Name is wrong")
End If
End Set
End Property
Public Property Salary() As Integer
Get
Return _salary
End Get
Set(ByVal value As Integer)
If value > 0 Then
_salary = value
Else
Throw New ArgumentOutOfRangeException("salary most be and greater than 0)");
End If
End Set
End Property
Public Function Tax() As Integer
If _salary <= 460000 Then Return 0
If _salary >= 460000 And _salary <= 560000 Then
Return ((_salary - 460000) * 0.1)
End If
End Function
End Class

این کلاس کارمندان
حالا برای گرفتن اطلاعات کارمندان و چاپ مالیات



Sub Main()
Dim empList As New List(Of Employee)

Dim i As Integer = 1
Console.WriteLine("Type End to End of data Entry")
Do While Console.ReadLine <> "end"
Dim emp As New Employee
Console.WriteLine("Enter Employee {0} Data", i)
Console.Write("ID(just numbers):")
emp.ID = Console.ReadLine()
Console.Write("Name:")
emp.Name = Console.ReadLine()
Console.Write("Salary:")
emp.Salary = Console.ReadLine()
empList.Add(emp)
Loop
For Each emp As Employee In empList
Console.WriteLine("{0} must pay {1} as tax", emp.Name, emp.Tax)
Next
Console.Read()
End Sub