گروه فناوری و کامپیوتر سازمان ملی پرورش استعدادهای درخشان عنوان :شرط ساده نام دبیر :باجالن دبیرستان دوره اول فرزانگان 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