الگوریتم کدهای ده دهی - نسخهی قابل چاپ صفحهها: ۱ ۲ |
الگوریتم کدهای ده دهی - روفی - ۱۰ آذر ۱۳۹۱ ۰۵:۲۶ ب.ظ
سلام! میشه تو این سوال کمکم کنید؟ الگوریتمی بنویسید که تمام کدهای ده دهی که شامل ۰و۱۱و۱۲و۲۱و۲۲ نیست؟؟ (یه فایلی رو هم پیوست کردم ) ببخشد شامل اون اعداد نیس رو تولیــــــــــــــــــــــــــــــــد کند! |
الگوریتم کدهای ده دهی - روفی - ۱۱ آذر ۱۳۹۱ ۰۲:۰۵ ب.ظ
کســـــــــــــــــــــــــــــــــــــــــــــــــــــــــی ایـــــــــــــــنجـــــــــــــــــــــــــــــــــــــــا نـــــــــــــــــــــــــــــــــــــیست؟ |
الگوریتم کدهای ده دهی - a.hooshmand - 11 آذر ۱۳۹۱ ۰۲:۳۷ ب.ظ
کد: c(n) |
RE: الگوریتم کدهای ده دهی - javadem - 11 آذر ۱۳۹۱ ۰۳:۳۲ ب.ظ
اینم یه جواب دیگه واسه این الگوریتم که بازگشتیه! [tex]C(int n,int x ,int y )\{[/tex] [tex]if (n = =0) cout << x[/tex] [tex]if (n > 0)\{[/tex] [tex]for(int i = 1;i<= 9;i )\{[/tex] [tex]if (y < 2\_ \&\&\_ i > 2)C( n - 1, x * 10 i, i)[/tex] [tex]if (y > 2) C( n - 1, x * 10 i, i)[/tex] [tex]\}[/tex] [tex]\}[/tex] [tex]\}[/tex] که x مقدار جاری را نگه میدارد! و y عدد تولید شده قبلی برای حفظ درستی الگوریتم! این الگوریتم باید با مقداری مثل [tex]C(num,0,9)[/tex] فراخوانی کنیم که num تعداد ارقام میباشد! این الگوریتم اینطور کار میکنه که در هر مرحله اگر شکل صحیح جواب حفظ شود ادامه میده در غیر اینصورت مقدار بعدی را چک میکند! البته ممکنه از لحاظ Syntax مشکل داشته باشه اما از لحاظ الگوریتمی مطمئن هست! |
الگوریتم کدهای ده دهی - روفی - ۱۱ آذر ۱۳۹۱ ۰۳:۵۴ ب.ظ
وای خدا !!! مرسی مرسی مرسی ! واقعا متشکرم ازتون! پر رو شدم!!! میشه تو اینم کمکم کنید؟ "الگوریتمی بنویسید که تمام کدهای با ارقام ۰ و۱و۲ ک شامل دو صفر کنار هم یا دو یک کنار هم نباشد را تولید کند!" بازم ممنونم ازتون! |
الگوریتم کدهای ده دهی - a.hooshmand - 11 آذر ۱۳۹۱ ۰۵:۵۴ ب.ظ
چون عشق بازگشت پذیر هستید!!! کد: C (n,z=-1) //*note1 //note1 یعنی چنانچه مقداری تعیین نشد مقدار پیشفرض منفی یک را بگیر (با عضوی خارج از مجموعه اعداد چاپ) //**note2 //{۰,۱,۲}-{z} معنی آن این هست که اعداد مجموعه به جز z را چاپ کن کد: for {i=0;i<3;i++) راستی این در کد اول شما یعنی چی؟ کد: cout <<0,1 الگوریتم اول خودتان را با زبان سی پلاس پلاس می توانید پیاده سازی کنید؟ مخصوصا ترکیب شدن این cout ها را!!! |
الگوریتم کدهای ده دهی - روفی - ۱۱ آذر ۱۳۹۱ ۰۶:۲۷ ب.ظ
پیاده سازیشو بلد نیستم ولی ازین ایده استفاده کرده بودم برا نوشتنش! اینو یه نگاه بندازید بیزحمت! ببخشید! من تازه شرو کردم به بررسی جواب ها ! متاسفانه اولین جوابی که برام نوشتید رو متوجه نمیشم! اگ اگ اگ اگ اگ اگ براتون امکانش هست یه توضیح کوچولو هم بدید! |
الگوریتم کدهای ده دهی - a.hooshmand - 11 آذر ۱۳۹۱ ۰۷:۱۳ ب.ظ
الگوریتم اول برای ساخت عدد n رقمی از به توان رساندن ۱۰ به قوه nاستفاده می کند مثلا ۲ رقمی : i از ۱۰ تا ۹۹ شمارش می کند به شرطی که ترکیبهایی که قرار نیست چاپ شوند در عدد وجود نداشت عدد را چاپ می کند. //////////////////// الگوریتم دوم اگه n یک بود اعداد ۰ تا ۲ چاپ می کند اگه n بیشتر از یک بود اعداد ۰ تا ۲ را اول چاپ می کند و در ادامه تابع را با یکی کمتر (و اطلاع به تابع که رقم قبلی صفر یا یک بوده که دوباره تابع پشت سر هم چاپ نکند) صدا می زند. در cout های تو در توی برای پیاده سازیش که شکل خروجی آن طوری شود که انتظار دارید شایید از کل الگوریتم شما مشکل تر شود ۱ c(3)==1111و۱۱۰۰و۱۱۰۱و۱۱۱۰و۱۰۱۱و۱۰۱۰و۱۰۰۱ ۱c(3) را بسط بدید که یک ها سر جای خود باشند اگه مستقیم چاپ کنید احتمالا شما بایید به جلو و عقب خط بروید و کارکترها را جابه جا کنید که به محل مناسب چاپ برسید. (پیاده سازی این کار خودش می تواند قصه ای باشد) |
الگوریتم کدهای ده دهی - روفی - ۱۱ آذر ۱۳۹۱ ۰۷:۲۶ ب.ظ
الان تو دلتون میگید این دختر عجب گـــــــــــــــــــــیریه هاااااااااااا این سوال آخرمه به جون روفی! ایشالا یه جوری جبران کنم هرچند شما نیاز ندارید به کمک کسی! "الگوریتمی بنویسید که تمام عدد هایی که فاقد الگوی ۱۱ هستن را تولید کند!" |
الگوریتم کدهای ده دهی - a.hooshmand - 11 آذر ۱۳۹۱ ۰۷:۳۴ ب.ظ
(۱۱ آذر ۱۳۹۱ ۰۷:۲۶ ب.ظ)روفی نوشته شده توسط: الگوریتمی بنویسید که تمام عدد هایی که فاقد الگوی ۱۱ هستن را تولید کند!"همون الگوریتم اولی را که نوشتم را این جوریش کن کد: if ({11} not in i) cout <<i; راستی اصلا به الگوریتم هایی که من نوشتم اعتماد نکن چون من اصلا درس طراحی الگوریتم پاس نکردم!!!(رشته لیسانس من یکی از گرایشهای مهندسی برق بوده) و ممکن هست اصلا درست نباشد!!! الگوریتم اول را خودتان نوشتید یا استادتان؟ |
الگوریتم کدهای ده دهی - روفی - ۱۱ آذر ۱۳۹۱ ۰۷:۳۹ ب.ظ
اولی رو فقط تونستم خودم بنویسم که به استاد نشون دادم گف قابل قبوله! یک دنیــــــــــــــــــــــــــا ممنونم ازتون! |
الگوریتم کدهای ده دهی - a.hooshmand - 11 آذر ۱۳۹۱ ۰۷:۴۸ ب.ظ
(۱۱ آذر ۱۳۹۱ ۰۷:۳۴ ب.ظ)a.hooshmand نوشته شده توسط: الگوریتمی بنویسید که تمام عدد هایی که فاقد الگوی ۱۱ هستن را تولید کند!"یا با تغییر برنامه دوم. کد: C (n,flag=false) |
الگوریتم کدهای ده دهی - روفی - ۱۱ آذر ۱۳۹۱ ۰۸:۳۵ ب.ظ
جسارت نباشه ! این الگوریتم فک میکنم که مثلا تو اعداد دو رقمی اعدادی که یکانشون ۱ باشه رو کلا تولید نمیکنه! در صورتی ک من مشکلم از بین اعداد دو رقمی فقط ۱۱ است! |
الگوریتم کدهای ده دهی - javadem - 11 آذر ۱۳۹۱ ۰۸:۴۷ ب.ظ
ببینید راه حل بهتر اینطور مسائل اینه همیشه آخرین عدد اضافه شده رو در حافظه نگه دارید البته اگر فرض نبودن یک عدد ۲ رقمی در تولیدات باشد(اگر فرض عدد n رقمی باشه باید n-1 رقم رو در حافظه نگه دارید). و در هر مرحله اگر با توجه به عددی که در حافظه است رشته تولید شده صحیح بود ادامه میدیم. در غیر این صورت باید حالت دیگه ای رو چک کنیم! حالا با این روش حل سوال آخرتونو مینویسم که روش جا بیوفته! تمام رشته هایی که فاقد ۱۱ باشند. برای این کار همیشه رقم قبلی که به رشته اضافه شده رو نگه میداریم و حالا اگر ۱ بود دیگه ۱ نمیتونیم اضافه کنیم اما اگر غیر ۱ بود هر یک از ۹ رقم رو میتونیم اضافه کنیم و n رو یک واحد کاهش میدیم. وقتی که n==0 بشه رشته یک رشته پذیرفته شده است و باید چاپ بشه! [tex]C(int\ n,int\ x ,int\ y )\{[/tex] [tex]if (n = =0) cout << x[/tex] [tex]if (n > 0)\{[/tex] [tex]for(int\ i = 0;i<= 9;i )\{[/tex] [tex]if (y == 1\ \&\&\ i !=1)C( n - 1, x * 10 i, i)[/tex] [tex]if (y !=1) C( n - 1, x * 10 i, i)[/tex] [tex]\}[/tex] [tex]\}[/tex] [tex]\}[/tex] اینم باید به صورت [tex]C(num,0 ,9 )\{[/tex] (یعنی یه حالت امن) فراخوانی اولیه کنیم! |
الگوریتم کدهای ده دهی - a.hooshmand - 11 آذر ۱۳۹۱ ۰۸:۵۲ ب.ظ
(۱۱ آذر ۱۳۹۱ ۰۸:۳۵ ب.ظ)روفی نوشته شده توسط: این الگوریتم فک میکنم که مثلا تو اعداد دو رقمی اعدادی که یکانشون ۱ باشه رو کلا تولید نمیکنه! if ((flag)&&(i!=1)) cout <<i; این flag برای همین هست |