ايران ويج

نسخه‌ی کامل: الگوریتم
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
سلام دوستان
من 2 تا سوال داشتم ممنون میشم اگه کسی میدونه واسم توضیح بده
1-الگوریتمی بنویسید که عددی را از ورودی دریافت کرده و ارقام ان را محاسبه و نشان دهد(ارقام عدد را جدا جدا کرده و نمایش دهد)
2-الگوریتمی بنویسید که عددی را از ورودی دریافت کند و مجموع ارقام زوج ان را محاسبه و نماش دهد
ممنون واقعا خیلی راهنماییم کردین جوابو پیدا کردم میزارم تا بقیه هم استفاده کنن
واسه الگوريتم اول
بايد هربار عدد رو تقسيم بر ده کني باقي مانده رو به عنوان يه کاراکتر توي ارايه بذاري در مرحله بعد خارج قسمت بايد دوباره تقسيم بر ده بشه تا زماني که عدد کوچکتر از 10 بشه
در انتها ارايه رو از اخر به اول چاپ کني
البته راه هايه ديگه اي هم داره اين اسون ترين راهشه


الگوريتم دوم هم بايد عدد رو به صورت يه رشته در آرايه قرار بدي
تک تک خونه هايه ارايه رو با اعداد زوج مقايسه کني هرکدوم زوج بود توي يه متغير به عنوان مجموع( sum) جمع کني و در نهايت چاپش کني
من این پست تازه دیدم وگرنه جوابشو برات میذاشتم !
واسه ی الگوریتم اول مراحلش درسته ولی چون باقیمونده رو توی ارایه میذاره جایی که گفتی ( تا جایی پیش بره که عددش کوچکتر از 10 باشه) اینجاش اشتباهه ! اخرین رقم یعنی یکان عدد رو در نظر نمی گیره ! مثلا 324 رو در نظر بگیر اولش خود 324 . بعد از تقسیم بر 10 خارج قسمتش میشه 32 و بعدش میشه 3 چون 3< 10 تقسیم ادامه پیدا نمی کنه و 3 توی ارایه قرار نمی گیره !
پس شرط کو چکتر از 10 رو بردار و بزرگتر از 0 رو برای خارج قسمت بذار !

واسه ی الگوریتم دوم هم می تونی اینطوری بنویسی :
عدد رو تقسیم بر 10کن .
باقیمونده ی عدد رو اگر زوج بود با متغیر sum جمع کن و دوباره توی sum بریز .
دو مرحله ی بالا رو تا موقعی تکرار کن که( خارج قسمت > 0 )باشد .
sum رو نمایش بده .
الگوریتمی میخوام تا باقیمانده و خارج قسمت یه عدد بر 10 رو بدست بیاره!
کسی میتونه کمکم کنه؟

به زبان سی پلاس پلاس !

خواهش میکنم اگه کسی میدونه کمکم کنه!

خواهشــــــــــــــــــــــــــــــــــ میکنم!
بر ۱۰ ؟؟!؟!
آخرین عدد سمت راست (یکان) رو جدا کن ؛ این میشه باقی موندت ؛ بقیش میشه خارج قسمت Biggrin

مثلا : 131316 تقسیم بر 10 :
میشه 13131 تا خارج قسمت
6 تا باقیمونده Biggrin
کد:
cout<<123\10;
cout<<123%10;
خب درست!
الان من در واقع الگوریتم این دو تا خط رو میخوام!
A rem 10^m
A divit 10^m
(۰۵-آبان-۱۳۹۱, ۲۲:۲۳:۱۷)roofia نوشته است: [ -> ]خب درست!
الان من در واقع الگوریتم این دو تا خط رو میخوام!
A rem 10^m
A divit 10^m
اینا چیه؟
میشه بیشتر توضیح بدین اینا چیه اصلا؟الگریتم یا کد؟
به خدا سوال همینه خب!
استاد گفت بـــــــــــــرو الگوریتم چگونگی "محاسبه ی باقیمانده و خارج قسمت یه عدد رو بر 10 به توان m "بنویس!
باور کنید!
ققنوس جان اصولا وقتی میگن الگوریتم یعنی اینکه خود زبان برنامه نویسی نمیتونه از عهده اش بر بیاد !
با توجه به الگوریتم، اون مسله باید حل بشه !!

مثلا ضرب 10 رقم در 100 رقم رو که نمیتونی اینجوری بدست بیاری!
میایی واسش یه الگوریتم درست میکنی که از عهده اینکار بر بیاد

------------
خب مهندس دارم بهت جواب رو میگم دیگه !! اینم یه راه حله خب Biggrin
(۰۵-آبان-۱۳۹۱, ۲۳:۱۱:۳۶)babyy نوشته است: [ -> ]ققنوس جان اصولا وقتی میگن الگوریتم یعنی اینکه خود زبان برنامه نویسی نمیتونه از عهده اش بر بیاد !
با توجه به الگوریتم، اون مسله باید حل بشه !!

مثلا ضرب 10 رقم در 100 رقم رو که نمیتونی اینجوری بدست بیاری!
میایی واسش یه الگوریتم درست میکنی که از عهده اینکار بر بیاد

------------
خب مهندس دارم بهت جواب رو میگم دیگه !! اینم یه راه حله خب Biggrin

babyy جان تو سوالشون گفتن الگریتم ولی بعد گفتن به زبان سی پلاسWhistle
کد:
int m, n,s=10;
cin<<m;
cin<<n;
for(int i=0;i<=m)
{
s*=10;
}
cout<<n/s;
cout<<n%s;
صفحه‌ها: 1 2