PDA

View Full Version : مبتدی: نمایش اعداد بخش پذیر بر دو عدد



karem2074
شنبه 07 آبان 1390, 11:06 صبح
با سلام
دوستان من میخوام دو ورودی را وارد کنم و اعداد بخش پذیر بر اون دو ورودی رو برام نمایش بده.مثلا عدد 10 و 20 را وارد کردم و اعدا بخش پذیر بر این دو عدد مانند 1 ,2 ,5 ,10 را برام نمایش بده.

ali_habibi1384
شنبه 07 آبان 1390, 11:35 صبح
int a=10, b=20;
for (int i = 1; i <= a; i++)
if (a % i == 0 && b % i == 0) listBox1.Items.Add(i);

ali_habibi1384
شنبه 07 آبان 1390, 11:42 صبح
ببخشيد اوني كه نوشتم باC# بود فكر كردم توي تالار سي شارپم:
a = 20: b = 10
For i = 1 To a
If a Mod i = 0 And b Mod i = 0 Then List1.AddItem (i)
Next i

mr-adler
شنبه 07 آبان 1390, 14:54 عصر
ببخشيد اوني كه نوشتم باC# بود فكر كردم توي تالار سي شارپم:
a = 20: b = 10
For i = 1 To a
If a Mod i = 0 And b Mod i = 0 Then List1.AddItem (i)
Next i

سلام عالی بود. فقط اگه براتون امکانش هست میتونید این کد رو به صورتی ویرایش کنید که بزرگترین و کوچکترین این اعداد انتخاب شده رو نشون بده؟(منظورم مقسوم علیه ها است)
من کد اشاره شده شما رو به صورت

a = InputBox("enetr num !")
b = InputBox("enetr num two !")
For i = 1 To a
If a Mod i = 0 Then
Text1.Text = Text1.Text & i & Space(1)
End If
Next i
For i = 1 To b
If b Mod i = 0 Then
Text1.Text = Text1.Text & i & Space(1)
End If
Next i
End Sub
استفاده کردم.نمیدونستم میشه اینجا هم از کلمه and استفاده کرد...

kitcat_m18
شنبه 07 آبان 1390, 17:48 عصر
a = 20: b = 10

If a>=b then
c=a
Else
c=b
End if

For i = 1 To c
If a Mod i = 0 And b Mod i = 0 Then List1.AddItem (i)
Next i

mr-adler
شنبه 07 آبان 1390, 18:06 عصر
a = 20: b = 10

If a>=b then
c=a
Else
c=b
End if

For i = 1 To c
If a Mod i = 0 And b Mod i = 0 Then List1.AddItem (i)
Next i


ممنونم دوست عزیز اما منظور من مشخص کردن کوچک ترین و بزرگترین مقدار متغییر i بود.
برام مهمه. اگه بشه بدون توابع api حل بشه عالی میشه.
اگه بشه این سوال رو جواب بدید جوابمو گرفتم:
مثلا فرض کنیم اعدادی در تکست باکس داریم که به وسیله کاراکتر space از هم جدا شده اند. چطوره میشه بزرگترین و کوچکترین انها رو تشخیص داد؟

هر کدوم رو جواب بدید مشکلم حله...
ممنون:قلب:

MMR_1344
یک شنبه 08 آبان 1390, 12:02 عصر
شما باید اول اون اعداد رو در جائی قرار بدی مانند لیست باکس بعد اعداد لیست باکس رو با هم مقایسه کنی تا کوچکترین و بزرگترین اون بدست بیاد

kitcat_m18
یک شنبه 08 آبان 1390, 14:35 عصر
شما باید اول اون اعداد رو در جائی قرار بدی مانند لیست باکس بعد اعداد لیست باکس رو با هم مقایسه کنی تا کوچکترین و بزرگترین اون بدست بیاد
نه نيازي نيست


مثلا فرض کنیم اعدادی در تکست باکس داریم که به وسیله کاراکتر space از هم جدا شده اند. چطوره میشه بزرگترین و کوچکترین انها رو تشخیص داد؟

مي توني از اين روش استفاده کني:

Private Sub Command1_Click()
Dim S
Dim Str As String

Str = "0 1 2 3 4 5 6 7 8 9"
S = Split(Str, " ")

Dim TMP As String

For i = LBound(S) To UBound(S)
If S(i) > TMP Then TMP = S(i)
Next i

MsgBox TMP
End Sub


من بزرگترين رو تشخيص دادم کوچکترين به عهده خودت!

موفق باشي :لبخندساده:

mr-adler
یک شنبه 08 آبان 1390, 17:24 عصر
سلام
ممنون که وقت گذاشتید و جواب دادید دوستان...

شما باید اول اون اعداد رو در جائی قرار بدی مانند لیست باکس بعد اعداد لیست باکس رو با هم مقایسه کنی تا کوچکترین و بزرگترین اون بدست بیاد
چطوری مقایسشون کنم؟مقایسه در لیست باکس رو تا حالا امتحان نکردم...

مي توني از اين روش استفاده کني:

If S(i) > TMP Then TMP = S(i)
ممنون , تکه کد بالا رو هر کار می کردم به ذهنم نمی یومد.روش جالبی بود....

من بزرگترين رو تشخيص دادم کوچکترين به عهده خودت!
:چشمک:

ali_habibi1384
یک شنبه 08 آبان 1390, 20:22 عصر
اوه بابا چرا اينقدر خودتونو گيج ميكنين الكي.چون برنامه داره اعداد رو بترتيب از كوچك به بزرگ مقسوم عليه ها رو بدست مياره بنابراين بزرگترين عدد آخرين عدد داخل ليست و كوچكترينش هم اولينش هست:

a = 20: b = 10
For i = 1 To a
If a Mod i = 0 And b Mod i = 0 Then List1.AddItem (i)
Next i
MsgBox "Min=" + CStr(List1.List(0)) + " Max=" + CStr(List1.List(List1.ListCount - 1))

mr-adler
یک شنبه 08 آبان 1390, 21:01 عصر
اوه بابا چرا اينقدر خودتونو گيج ميكنين الكي
مقصود علاوه بر اینکه حل این سوال باشه در رابطه با موارد دیگه هم بود.به خاطر همین....
کد جالبی نوشتید.ممنون:قلب: