اعدادی که بر 3 بخش پذیرند؟؟؟؟
سلام .
ما یه عدد توی تکست باکس وارد می کنیم که می خواهیم ببینیم این عدد بر 3 بخش پذیره یا نه.
فرمول بخش پذیری اعداد بر 3 توی ریاضی اینه: اعدادی بر3 بخش پذیرند که مجموع رقم هایشان بر 3 بخش پذیر باشد.
حالا من یه دکمه دارم که چک کنه ببینه بر 3 بخش پذیره یا نه.
پس باید روی دکمه کدی رو بنویسم که ابتدا ارقام تکست باکس رو با هم جمع بزنه . بعد چک کنه که اگر ارقام جمع شده تقسیم بر 3 یک عدد اعشاری در اومد یعنی بخش پذیر نیست و اگر غیر از این بود یعنی بخش پذیره .
ولی من نمیدونم که باید به چه صورت این رو به صورت کد بنیویسم.
ممنون میشم اگ راهنماییم کنین.
فک می کنم تمام جزییات رو ذکر کردم و توضیح کاملی رو دادم ولی اگ کسی منظورمو متوجه نشد بگه تا دقیق تر توضیح بدم
__________________________________________________ ______________________________________________
کسایی که اکثر مواقع آنلاین هستند و تسلط کامل به این زبان دارن آیدی منو ادد کنن تا بتونم بیشتر در زمینه های مختلف ازشون راهنمایی بگیرم . seyed.dehnavi@yahoo.com
برای چت کلیک کنید
نقل قول: اعدادی که بر 3 بخش پذیرند؟؟؟؟
سلام دوست عزیز
برای اینکار باید عددی وارد شده در تکست باکس رو به اجزاش تقسیم کنید ( با متد substring )
ولی قبل از اینکار باید بشمارید چند کاراکتره ( به متد count ) تا بعد اونو به همون تعداد تقسیم کنید
و بعد هر کاراکتر رو به یعد عدد تبدیل و بعد جمعش کنید
البته توجه کنید که نیاز هست که کنترل دقیق روی ورودی داشته باشید تا کارکاترهای غیر عددی وارد نشن وگرنه برنامه غاطی میکنه
پاورقی : شاید خود سی شارپ متدی برای همه اینکارها داشته باشه ولی من بهر حال بی اطلاعم
نقل قول: اعدادی که بر 3 بخش پذیرند؟؟؟؟
نقل قول:
برای اینکار باید عددی وارد شده در تکست باکس رو به اجزاش تقسیم کنید ( با متد substring )
میشه یه مثال بزنید . چون من تا حالا با این متد کار نکردم
نقل قول:
البته توجه کنید که نیاز هست که کنترل دقیق روی ورودی داشته باشید تا کارکاترهای غیر عددی وارد نشن وگرنه برنامه غاطی میکنه
بله . این کار و کردم از قبل که فقط عدد بپذیره
در آخر باید تقسیم بر 3 بشه که ببینم عدد طبیعیه یا اعشاری .
این کارو چجوری انجام بدم؟
نقل قول: اعدادی که بر 3 بخش پذیرند؟؟؟؟
سلام
ببین اینو می خواستی؟
Dim i As Integer
i = Val(Text1.Text) / 3
'MsgBox i * 3 '(Val(Text1.Text) - i)
If Val(Text1.Text) - (i * 3) = 0 Or Text1.Text = 1 Then
MsgBox "است"
ElseIf (Val(Text1.Text) - (Val(Text1.Text) / 3)) <> 0 Then
MsgBox ".نیست"
End If
نقل قول: اعدادی که بر 3 بخش پذیرند؟؟؟؟
نقل قول:
نوشته شده توسط
sh.dehnavi
میشه یه مثال بزنید . چون من تا حالا با این متد کار نکردم
بله . این کار و کردم از قبل که فقط عدد بپذیره
در آخر باید تقسیم بر 3 بشه که ببینم عدد طبیعیه یا اعشاری .
این کارو چجوری انجام بدم؟
راستش من وی بی را خیلی یادم نمونده و این متد ها رو سی شارپ داره. تقریبا مطمئنم تو وی بی هم همین اسامی را دارن.
نقل قول: اعدادی که بر 3 بخش پذیرند؟؟؟؟
سلام دوستان عزیز برای فهمیدن بخش پذیری اعداد راهای ساده تری هم هست
اینم کد
if val(textbox1.text) mod 3=0 then
msgbox ("بخش پذیر است")
else
msgbox ("بخش پذیر نیست")
end if
موفق باشید
نقل قول: اعدادی که بر 3 بخش پذیرند؟؟؟؟
ببخشید گفتم شاید کد رو متوجه نشی این تایپیک رو زدم
ساده ترین روش برای بررسی بخش پذیری اعداد به یک عدد خاص اینه که بررسی کنیم ببینیم باقیمانده تقسیم ان عدد به 3 برابر با 0 باشه
یعنی عدد 33 رو اگه به 3 تقسیم کنیم میشه 11 و باقیمانده هم میشه 0 پس یعنی بخش پذیره
حالا برای بدست اوردن باقیمانده دو تقسیم از mod استفاده میشه
این توضیحاتی که باید بدونی
در خط اول از تابع val برای تبدیل رشته به عدد استفاده کردیم تا اگر کاربر حتی متنی هم وارد کرد تنها قسمت عددی انتخاب شود
و بررسی کردیم که اگر باقیمانده جعبه متن اول برابر با 0 بود یعنی بخش پذیر است و در غیر اینصورت بخش پذیر نیست
ببخشید اینقدر زیاد توضیح دادم چون سطح کار کرد تون با vb رو نمیدونستم
امیدوارم تونسته باشم کمکتون کنم
موفق باشید
نقل قول: اعدادی که بر 3 بخش پذیرند؟؟؟؟
از این قشنگتر نتونستم
bool Mod3(string Number){
int Sum = 0
for(int n = 0;n != Number.Length;n++)
{
char Current = Number[n];
if ((Current < 0x0030) || (Current > 0x0039)) throw new ArgumentOutOfRangeException("Number");
Sum += Current - 0x0030;
if (Sum > 10)
Sum -= 9;
}
return (Current == 0) || (Current == 3) || (Current == 6) || (Current == 9);
}
موقعی که میخواستم paste کنم توی Editer ه Forum یادم اومد VB ه.