Uploaded by mkhayamzadeh

کاربرگ9-شرط ساده

advertisement
‫گروه فناوری و کامپیوتر‬
‫سازمان ملی پرورش استعدادهای درخشان‬
‫عنوان ‪:‬شرط ساده‬
‫نام دبیر ‪ :‬باجالن‬
‫دبیرستان دوره اول فرزانگان ‪ 2‬منطقه ‪1‬‬
‫کاربرگ شماره ‪9 :‬‬
‫نام و نام خانوادگی ‪:‬‬
‫پایه ‪:‬هشتم‬
‫تاریخ ‪99 / 11 / 8 :‬‬
‫کالس ‪:‬‬
‫کاربرد شرط‬
‫فرض کنید از شما بخواهند که از داخل یک کیسه که در آن توپهای رنگی ریخته شده است یک توپ در آورید‪ .‬اگر توپی که‬
‫درآوردهاید آبی بود یک دایره روی صفحه بکشید و اگر قرمز بود یک مربع روی صفحه بکشید‪ .‬خب اگر بخواهیم برنامهی چنین‬
‫بازی را بنویسیم باید دو حالت را در نظر بگیریم که توپی که از کیسه درمیآوریم ممکن است قرمز باشد یا آبی‪ .‬پس نیازمند استفاده‬
‫از واژهی اگر هستیم تا با استفاده از آن حاالت مختلف را بررسی کنیم و برای هر حالت دستورات مربوط به آن را بنویسیم‪.‬‬
‫در بسیاری از بازی هایی که شما انجام میدهید در مسیرهایی قرار میگیرید که باید دست به انتخاب بزنید‪.‬مثال در تصویر زیر که‬
‫یکی از مراحل بازی ‪ code.org‬است ‪،‬آواتار شما در یک دو راهی قرار می گیرد که شما باید با گذاشتن شرط مسیر رفتن آن را‬
‫مشخص کنید‪.‬‬
‫مثالی دیگر از شرط که در زندگی روزمره از آن استفاده میکنیم اپلیکیشن اسنپ می باشد‪.‬اینکه هزینه های مسیر چگونه برآورد‬
‫می شود به طور مثال شما از خانه برای رسیدن به مدرسه مسیرهای متعددی دارید وقتی شما از اسنپ ‪ ،‬ماشین میگیرید اپلیکیشن‬
‫مسیریاب ‪ waze‬به راننده مسیری که زمان کمتری تا رسیدن به مقصد صرف می شود را نشان می دهد که میتواند از نظر مسافت‬
‫طوالنی تر باشد‪ .‬بنابراین آیتم هایی توسط این اپلیکیشن در نظر گرفته می شود مثال اگر مسیری کمترین تعداد چراغ قرمز یا‬
‫کمترین ترافیک را داشته باشد و یا کوتاهترین مسیر برای رسیدن به مقصد باشد و هزینه ها هم با توجه به این آیتم ها برآورد می‬
‫شود بنابر این ‪ ،‬اپلیکیشن ما با توجه به شرایط موجود دست به انتخاب میزند و مسیر را به راننده نشان می دهد‪.‬‬
‫شما چه مثال های دیگر در زندگی روزمره خود از شرط ها در ذهنتان دارید؟‬
‫برنامه هایی که تا پیش از این می نوشتید خط به خط اجرا میشدند و هیچ خطی از برنامه وجود نداشت که اجرا نشده باشد‪.‬‬
‫اما گاهی میخواهیم برنامههایی بنویسیم که در شرایط متفاوت نیازمند دستورات متفاوتی هستند ‪.‬‬
‫‪1‬‬
‫ساختار کلی شرط‬
‫قالب دستور‬
‫‪:‬شرط ‪if‬‬
‫دستورات‬
‫چگونه یک شرط بنویسیم؟‬
‫شرط یعنی مقایسه بین دو مقدار‪،‬نتیجه یک عبارت شرطی یا درست است و یا اشتباه‪.‬برای نوشتن عبارت شرطی به عملگرهای‬
‫مقایسه ای نیاز داریم‪.‬‬
‫عملگرهای مقایسه ای‬
‫عملگرهای مقایسه ای در پایتون با عملگرهای مقایسه ای در ریاضی کمی متفاوت است‪.‬‬
‫پایتون‬
‫ریاضی‬
‫مفهوم‬
‫==‬
‫=‬
‫برابری‬
‫=!‬
‫≠‬
‫مخالف بودن‬
‫>‬
‫>‬
‫کوچکتر‬
‫<‬
‫<‬
‫بزرگتر‬
‫=<‬
‫≥‬
‫کوچکتر مساوی‬
‫=>‬
‫≤‬
‫بزرگتر مساوی‬
‫نکته‪:‬اگر بخواهیم شرطی برای برابری دو متغیر ‪a‬و‪ b‬بنویسیم‪،‬باید بنویسیم ‪ a==b‬و نه‪a=b‬‬
‫‪2‬‬
‫نوشتن یک برنامه با ‪if‬‬
‫فرض کنید می خواهیم برنامه ای بنویسیم که ماه تولد شما را بگیرد و اگر ماه تولد شما شهریور بود تولدتان را تبریک بگوید‪.‬‬
‫بخش اول برنامه گرفتن ورودی از کاربر است برای اینکار ما از دستور ‪ input‬استفاده میکنیم و چون ورودی یک عدد است پس‬
‫باید بنویسیم‪.‬‬
‫))”‪month=int(input(“Enter your birthday month:‬‬
‫در ادامه باید بررسی کنیم که ماه تولد شما شهریور است در این صورت پیام تبریک را چاپ کند‪.‬‬
‫‪if month==6:‬‬
‫)”‪print(“Happy birthday to you‬‬
‫نکته‪:‬دستوراتی که باید در صورت برقرار بودن شرط اجرا شوند مقداری جلوتر از ‪if‬باید نوشته شود‪.‬و اگر دستوری را هم سطح با‬
‫‪ if‬بنویسیم دستور ‪ if‬نیستند و در هر صورت اجرا می شوند‪.‬‬
‫مثال ‪ :2‬می خواهیم برنامه ای بنویسیم که دو عدد را از کاربر بگیرد و اگر عدد اول بر عدد دوم بخش پذیر نبود پیغام مناسب چاپ‬
‫کند‪.‬‬
‫بخش اول برنامه گرفتن ورودی از کاربر است برای اینکار ما از دستور ))(‪int( input‬استفاده میکنیم وحواسمان باشد که باید‬
‫دو عدد بگیریم‪.‬‬
‫))”‪adad1=int(input(“adad aval ra vared kon:‬‬
‫))”‪adad2=int(input(“adad dovom ra vared kon:‬‬
‫در ادامه باید بخش پذیری عدد اول بر عدد دوم را بررسی کنیم‪.‬‬
‫‪if adad1 % adad2 != 0:‬‬
‫)”‪Print(“adad 1 bar adad 2bakhshpazit nist‬‬
‫یادآوری‪ :‬عالمت ‪ %‬برای باقیمانده یک عدد بر عدد دیگر استفاده می شود‪.‬‬
‫چند نکته کلیدی‪:‬‬
‫‪ ‬برای مساوی بودن از == استفاده می کنیم‪.‬‬
‫‪ ‬عالمت دو نقطه بعد از شرط را فراموش نمی کنیم‪.‬‬
‫‪ ‬دستورات شرط را به اندازه یک ‪ Tab‬جلوتر از شرط می نویسیم‪.‬‬
‫‪3‬‬
‫آیا برنامه زیر در پایتون اجرا می شود؟بدون نوشتن در کامپیوتر حدس بزنید‪.‬‬
‫‪a=2‬‬
‫”‪b=”2‬‬
‫‪if a==b:‬‬
‫)”مساوی“(‪print‬‬
‫‪if a!=b:‬‬
‫)”نامساوی“(‪print‬‬
‫پاسخ بده‬
‫مقایسه بین دورشته‪:‬‬
‫بین دو رشته آن که از نظر ترتیب الفبا قبل از دومی قرار می گیرد کوچکتر است‪.‬پایتون حروف بزرگ التین(‪ A‬تا‪ )Z‬را بعد از‬
‫حروف کوچک التین(‪ a‬تا‪ ) z‬را در نظر میگیرد و حروف عربی – فارسی را هم بعد از آن ها‪.‬ولی ترتیب حروف فارسی را مشابه‬
‫ترتیب حروف عربی در نظر می گیرد‪.‬‬
‫دستور ‪else‬‬
‫گاهی اوقات در یک دستور‪ ، if‬شرط ما صادق نیست و ‪ if‬اجرا نمیشود‪ .‬در این صورت اگر از ‪ else‬استفاده کنیم‪ ،‬دستورات‬
‫قسمت ‪ else‬اجرا میشود‪.‬‬
‫مثال‪ :‬برنامه ای بنویسید که دو عدد را از ورودی بگیر اگر عدد اول بر عدد دوم بخش پذیر نبود پیغام مناسب چاپ کند و گر نه‬
‫حاصل تقسیم اولی بر دومی را چاپ کند‪.‬‬
‫ممکن است شما این برنامه را به صورت زیر بنویسید‪.‬‬
‫))”‪adad1=int(input(“adad aval ra vared kon:‬‬
‫))”‪adad2=int(input(“adad dovom ra vared kon:‬‬
‫‪if adad1 % adad2 != 0:‬‬
‫)”‪print(“adad 1 bar adad 2bakhshpazit nist‬‬
‫‪if adad1 % adad2 == 0:‬‬
‫)‪print(adad1/adad2‬‬
‫‪4‬‬
‫راه ساده تر استفاده از دستور ‪ else‬است ‪ else‬به پایتون می گوید اگر شرط برقرار نبود چه دستوراتی را انجام دهد‪.‬‬
‫قالب دستور‬
‫‪:‬شرط ‪if‬‬
‫دستورات در صورت برقرار بودن شرط‬
‫‪...‬‬
‫‪else:‬‬
‫دستورات در صورت برقرار نبودن شرط‬
‫‪...‬‬
‫نکته‪ :‬دستور ‪ else‬همراه با دستور ‪ if‬استفاده می شود یعنی اگر ‪ else‬بدون ‪ if‬باشد یا هم سطح با آن نباشد‬
‫‪،‬پایتون پیام خطا می دهد‪.‬‬
‫فعالیت کن‪:‬‬
‫برنامه باال را با استاده از دستور ‪ else‬دوباره بنویس‪.‬‬
‫برنامه بنویس‬
‫برنامه زیر ‪ else‬به کدام‪ if‬تعلق دارد؟و در چه شرایطی "ج" نوشته خواهد شد‪.‬‬
‫))(‪a=int(input‬‬
‫‪if a==0:‬‬
‫)”الف“(‪print‬‬
‫‪if a==1:‬‬
‫)”ب“(‪print‬‬
‫‪else:‬‬
‫)”ج“(‪print‬‬
‫حواستو جمع کن‬
‫‪5‬‬
Download