تصمیم گیری با if و elif (بخش دوم)
به این دستور توجه کنید: (آیا عدد 3، عددی اول است؟)
جواب:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
به این دستور نیز توجه کنید: (آیا عدد 6، عددی اول است؟)کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
جواب:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
یک برنامه ی کوتاه (اگر خروجی دستور(isprime(7 عبارت true است، به طور ساده تر، اگر 7 عددی اول است، عبارت "*" را چاپ کن):کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
جواب:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
برنامه ی کوتاه بالا را می توان کوتاه تر کرد:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
جواب:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
به کارگیری دستور if کمی پیشرفته تر!!کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اگر 1 از 2 بزرگتر باشد، عدد 3 و در غیر این صورت عدد 4 را چاپ کن.
جواب:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
مثال دیگر: (اگر 7 عددی اول است، عبارت "*" و در غیر این صورت عدد 4 را چاپ کن).کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
جواب:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدبرنامه ی 9:
تابلوسازی با استفاده از اعداد اول!!
اعداد طبیعی 1 تا 50 را در نظر بگیر. اگر عدد مورد نظر، اول بود به جای آن، کاراکتر 1 و در غیر اینصورت کاراکتر 0 را قرار بده. البته می توان از کاراکترهای دیگر هم استفاده کرد. (این برنامه به ما در بررسی چگالی اعداد اول یا به طور ساده تر، چگونگی پخش اعداد اول در میان اعداد طبیعی کمک می کند.)
جواب:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
دستور elif:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اگر لازم است در یک برنامه، چند شرط (بیش از 2 شرط) را بررسی کنیم، معمولاً از دستور elif استفاده می کنیم، به برنامه های زیر توجه کنید:
برنامه ی 10:
تعریف تابع قدر مطلق f با استفاده از if و elif:
اگر x مثبت بود، x را تحویل بده، اگر صفر بود، صفر را تحویل بده و اگر منفی بود، x- را تحویل بده (به این برنامه x داده شده، (f(x تحویل گرفته می شود).
مثالکد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
جواب:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
حتی می توانید پس از تعریف f، آن را با دستور زیر، رسم کنید:کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
یعنی f را در بازه ی x از 2- تا 2 و y در بازه ی 1- تا 2 رسم کن. (دستور بالا را اجرا کنید و شکل تابع قدرمطلق را در بازه ی تعریف شده ببینید.)کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
البته تابع f در بالا را به صورت زیر نیز می توان تعریف کرد (چرا؟):
دوستانی که دروس بالا را دنبال می کنند، تمرین زیر را حل و برنامه ی نوشته شده خود را ارسال فرمایند. منتظریم!!کد:برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
تمرین 1:
با تقلید از برنامه ی 10، تابع f را به گونه ای تعریف کنید که اگر عددی اول گرفت، عبارت prime را چاپ کند، در غیر این صورت اگر عدد به صورت 3k+1 بود (مثلاً 16) عبارت "3k+1" را چاپ کند و اگر هیچ کدام از دو حالت بالا نبود، عبارت "I don't know" را.
موفق باشید.
13 مرداد 1391
ویرایش دوم: 14 مرداد 1391