View Full Version : سوال: چطوري مستونم 3 رقم از آخر يك textboxرو جدا كنم ؟؟؟؟
ایمان مدائنی
شنبه 24 بهمن 1388, 14:45 عصر
سلام !
ببخشيد كه من زياد سوال ميپرسم !
خب تو دانشگاههاي ما زياد ياد نميدن !
سوالم اينه :
من يك TextBox دارم كه متن داخلش اينه 1985450 حالا مي خوام 3 رقم آخرش رو جدا كنم !
مثلا من ميخوام 450 رو جدا كنم و داخله يك متغر int بريزم !
اگه كسي ميدونه كدش رو برام بزاره !
ممنونم !
همگي موفق باشيد !
dousti_design
شنبه 24 بهمن 1388, 15:19 عصر
سلام.
شما باید این عدد رو 3بار بر 10 تقسیم کنید و باقیمانشو بردارید.
1985450/10=198545
(باقیماندش میشه صفر)
198545/10=19854(بقیماندش میشه 5)
وی همینطور تا آخر.
حالا مثلا 450 رو توی یه آرایه دارید.( 0 توی یه درایه، 5 یه درایه، و 4هم یه درایه دیگه)
حالا باید داخل یک حلقه این رو بذارید توی یه متغیر int.
int a=0;
for(int i=0;i<n;i++)//n tedade arghami ke mikhahid biroon biavarid(dar inja 3)
{
a+=array[0]*pow(10,i);//pow tabee tavan ast va array arayeest ke adad dar an zakhire shode ast
}
مثلا 1985450:
3بار تقسیم بر 10 میکنیم و در آرایه ذخیره میکنیم.
و بعد 450 رو که درآوردیم: به این صورت در متغیر قرار میدیم.
اول عدد صفر را ضربدر 10 به توان صفر میکنیم که میشه صفر. بعد عدد 5 رو ضربدر 10 به توان یک میکنیم که میشه 50. و بعد عدد 4 رو ضربدر 10 به توان 2 میکنیم که میشه 400 و حاصل جمعشون میشه جواب: 450
r00tkit
شنبه 24 بهمن 1388, 15:47 عصر
اقا این همه پیچوندن نداره پس این همه class و method رو برای کی ساختن؟؟؟؟؟؟
int s = int.Parse(textBox1.Text.Substring(textBox1.Text.Le ngth - 3, 3));
textBox1=اسم textBox
3 تعداد کاراکتر ها که می تونه هر چند تا باشه
dousti_design
شنبه 24 بهمن 1388, 15:53 عصر
من الگوریتمشو نوشتم و مختص هیچ زبان خاصی نیست. بله با روش شما هم میشه این کار رو کرد.
موفق باشید!
r00tkit
شنبه 24 بهمن 1388, 19:56 عصر
در جواب اقای iman_lovely666 (http://barnamenevis.org/forum/member.php?u=125609)
رند کردن 2 رقم ا خر ( موضوع رند کردن سه رقم اخره ولی تو توضیح سوال به 50 تومان اخر اشاره شده پس می شه 2 رقم اخر)
البته خود 50 رو روند نکردم فقط کافیه یه = توی شرط بزاری
private void button2_Click(object sender, EventArgs e)
{
int x = int.Parse(textBox1.Text);
string d = x.ToString().Substring(textBox1.Text.Length-2,2);
if (int.Parse(d) > 50)
{
x -= int.Parse(d);
x += 100;
}
if (int.Parse(d) < 50)
x -= int.Parse(d);
}
x اخر رند شده هستش.
موفق باشی
ایمان مدائنی
شنبه 24 بهمن 1388, 21:49 عصر
عزيز خيلي ممنونم
يه كوچولو دستكاريش كردم و به جوابي كه مي خواستم رسيدم
private void button1_Click(object sender, EventArgs e)
{
int x = int.Parse(textBox1.Text);
string d = x.ToString().Substring(textBox1.Text.Length - 3, 3);
if (int.Parse(d) >= 500)
{
x -= int.Parse(d);
x += 1000;
}
if (int.Parse(d) < 500)
{
x -= int.Parse(d);
}
textBox2.Text = Convert.ToString(x);
}
جواب داد !
هیچ کس بلد نبود !
r00tkit
شنبه 24 بهمن 1388, 22:50 عصر
هیچ کس بلد نبود
پس من چی بودم !!!wink
slashslash2009
شنبه 24 بهمن 1388, 22:55 عصر
string d = x.ToString().Substring(textBox1.Text.Length - 3, 3);
تا اینجاش درست ولی بقیش چیه چه ربطی به سواله اولتون داشت
ایمان مدائنی
شنبه 24 بهمن 1388, 23:14 عصر
پس من چی بودم !!!wink
عزیز منظورم 3 رقم آخر نبود !
من که از شما تشکر کردم !
منظورم کله سوال بود !
آخه جواب سوالم رو شما از یه بحثه دیگه در اینجا داديد !
قصد جسارت نداشتم !
خب شما جواب سوالمو داديد !
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.