PDA

View Full Version : مبتدی: راهنمایی برای ساخت یک برنامه بسیار مبتدی!



Black Shadow
دوشنبه 11 آبان 1388, 12:57 عصر
با سلام.
شرمنده که سوالم خیلی ابتدایی هستش ولی من هم تقریبا میشه گفت دو روز هست که دارم با نرم افزار #C کار میکنم. یه سوال خیلی ذهنم رو مشغول کرده...
من اگه بخوام نرم افزاری بنویسم که مثلا از عدد 1000 تا 10000 رو بگیره و تمام اعدادی که معکوسشون برابر با خودشون هست رو توی یه لیست باکس نشون بده باید چیکار کنم؟ برای مثال عدد 1001 معکوسش هم 1001 هستش یا ... ! اگه راهنمایی کنید خیلی ممنون میشم.
موفق و پیروز باشید.

alinaghiha
دوشنبه 11 آبان 1388, 13:18 عصر
همين 1221 رو در نظر بگير
اول باقيمانده تقسيم 1221 رو بدست مي يارم ميشه 1 حالا 1221 رو تقسيم صحيح 1000 مي كنم نتيجه مي شه 1 اين دو تا با هم مساويند
حالا باقيمانده تقسيم به 10 (يعني 1) رو به همراه 1000 ضربدر تقسيم صحيح به 1000(يعني 1*1000) رو از عددت كم كن
ميشه220 =1001-1221
حالا 220 رو به 10 تقسيم كن تا 22 بدست بياد
حالا اگه باقيمانده تقسيم به 10 عدد باقيمانده با تقسيم صحيحش به 10 برابر باشه معكوس بوده

از 1000 تا 9999 جواب مي ده يه خورده الگوريتمو دستكاري كني برا تمام اعداد جواب مي ده

Black Shadow
دوشنبه 11 آبان 1388, 14:10 عصر
شرمنده من خیلی گیج هستم :D اگه یه مقدار بیشتر توضیح بدید خیلی ممنون میشم!

Black Shadow
دوشنبه 11 آبان 1388, 16:13 عصر
آقا لطفا یکی جواب بده. من فردا باید این تمرین رو به استادم بدم وگرنه نمره بهم نمیده :D

alinaghiha
سه شنبه 12 آبان 1388, 12:33 عصر
ببخشيد من كه كامل واست نوشتم فقط زحمت بكش تبديل به كدش كن بذار بين


for(int i=1000;i<10000;i++)
{
}

با كجاي الگوريتم مشكل داري

alinaghiha
سه شنبه 12 آبان 1388, 12:45 عصر
اينم برنامه



for (int i = 1000; i < 10000; i++)
{
int temp=i;
if ((temp % 10 == temp / 1000))
temp = temp - (temp / 1000 * 1000 + temp % 10);
temp = temp / 10;
if ((temp % 10 == temp / 10))
listBox1.Items.Add(i);
}

فقط زحمت بكش يك button و يك list box به فرمت اضافه كن
موفق باشي
اميدوارم اساتيد به خاطر جواب سرزنشم نكنن

Salar Ashgi
سه شنبه 12 آبان 1388, 13:14 عصر
سلام ، بروش ساده تر میتونید عدد رو بصورت رشته ای در نظر بگیرید و با یک حلقه هر بار ابتدا و انتهای

رشته رو چک کنید .

موفق باشید .

Black Shadow
سه شنبه 12 آبان 1388, 15:31 عصر
alinaghihau عزیز واقعا برنامه ای که نوشتی خیلی عالی بودش و اجرا شدش اما چیزی که هست اینه که من واقعا متوجه ی معادلات ریاضیش نشدم! خیلی عجیبه... ! باید ببخشی آخه من همونطور که گفتم خیلی خیلی تازه کار هستم.

mehdi.mousavi
سه شنبه 12 آبان 1388, 16:14 عصر
alinaghihau عزیز واقعا برنامه ای که نوشتی خیلی عالی بودش و اجرا شدش اما چیزی که هست اینه که من واقعا متوجه ی معادلات ریاضیش نشدم! خیلی عجیبه... ! باید ببخشی آخه من همونطور که گفتم خیلی خیلی تازه کار هستم.


for (int i = 1000; i < 10000; i++)
{
string str = i.ToString();
string rev = new string(str.ToCharArray().Reverse().ToArray());
if (str == rev)
this.listBox1.Items.Add(i);
}

alinaghiha
چهارشنبه 13 آبان 1388, 08:42 صبح
alinaghihau عزیز واقعا برنامه ای که نوشتی خیلی عالی بودش و اجرا شدش اما چیزی که هست اینه که من واقعا متوجه ی معادلات ریاضیش نشدم! خیلی عجیبه... ! باید ببخشی آخه من همونطور که گفتم خیلی خیلی تازه کار هستم.
تو پست اولم دقيقا توضيح دادم كه چطوري انجام شده
از اول و آخر يكي يكي جدا كرده و با هم مقايسه كردم