سلام خدمت کاربران محترم سایت پی وی لرن.
با جلسه ای دیگر از سری جلسات دوره آموزش جامع برنامه نویسی کامپیوتر در خدمت شما هستیم.
در این جلسه قصد داریم به آموزش دستورات شرطی در برنامه نویسی بپردازیم.
تصمیم گیری در برنامه نویسی کامپیوتر امری بسیار مهم است.
حتی در برنامه های ساده نیز موقعیت هایی پیش میآید که باید بر اساس شروط موجود، کاری را انجام یا انتخاب کنید.
با استفاده از دستورات شرطی میتوانیم تصمیم گیری های مختلفی بر اساس شرایط موجود، اتخاذ کنیم.
پایه ای ترین دستور شرطی، دستور if است.
این دستور که پرانتز به همراه آن میآید، شرطی را دریافت میکند و اگر شرط درست باشد، بلوک کد مربوط به خود را اجرا میکند.
1 2 3 4 | if (شرط یا شرط ها) { کدهایی که در صورت درست بودن شروط، اجرا خواهند شد } |
در مثال زیر، برنامه ای به زبان C نوشته شده است که در آن بر اساس نمره یک دانش آموز، سطح دانش آموزش را تعیین میکند.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <stdio.h> int main() { int x = 45; if( x > 95) { printf( "سطح دانش آموز خوب است"); } if( x < 30) { printf( "سطح دانش آموز ضعیف است"); } if( x < 95 && x > 30 ) { printf( "سطح دانش اموز متوسط است"); } } |
خروجی:
1 | سطح دانش آموز متوسط است |
در اینجا چون مقدار ۴۵ بین مقادیر ۳۰ و ۹۵ است، دستور if سوم اجرا میشود.
نوع دیگری از دستورات شرطی وجود دارد که در آن اگر شرط گرفته شده در if درست نباشد، بلوک دیگر به نام else اجرا میشود.
1 2 3 4 5 6 7 8 | if (شرط) { اگر شرط دست باشد، این بلوک کد اجرا می شود } else { اگر شرط درست نباشد، این بلوک کد اجرا می شود } |
مثال:
1 2 3 4 5 6 7 8 9 10 11 12 | #include <stdio.h> int main() { int x = 45; if( x > 95) { printf( "سطح دانش آموز خوب است"); } else { printf( "سطح دانش آموز خوب نیست"); } } |
خروجی:
1 | سطح دانش آموز خوب نیست |
در این نوع از دستورات شرطی، دستور else نیست میتواند شرط داشته باشد.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | if (شرط 1 ) { اگر شرط 1 درست باشد، این بلوک کد اجرا می شود } else if (شرط 2 ) { اگر شرط 2 درست باشد، این بلوک کد اجرا می شود } else if (شرط 3) { اگر شرط 3 درست باشد، این بلوک کد اجرا می شود } else { اگر هیچ کدام از شروط بالا درست نباشند، این بلوک کد اجرا می شود } |
مثال:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | #include <stdio.h> int main() { int x = 45; if( x > 95) { printf( "سطح دانش آموز خوب است"); } else if( x < 30) { printf( "سطح دانش آموز ضعیف است"); } else if( x < 95 && x > 30 ) { printf( "سطح دانش آموزش متوسط است"); } } |
خروجی:
1 | سطح دانش آموز متوسط است |
از دستور switch برای بررسی یک مقدار با موارد (case های) مختلف استفاده میشود. اگر مقدار مورد نظر با مقدار یک مورد برابر باشد، کد مربوط به آن مورد اجرا میشود.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | switch (n) { case مقدار 1: // کد اجرا می شود اگر n با مقدار 1 برابر باشد break; case مقدار 2: // کد اجرا می شود اگر n با مقدار 2 برابر باشد break; . . . default: // اگر هیچ تطبیقی نباشد کد ابن بلوک اجرا می شود. } |
دستور break از ادامه مقایسه بی دلیل با سایر موارد جلوگیری میکند. پس حتما از این دستور استفاده کنید.
در اخر هم اگر هیچ مورد تطبیقی یافت نشد، کد های مربوط به default اجرا میشود.
گذاشتن default اختیاری است.
مثال:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #include <stdio.h> int main() { int x = 2; switch( x ){ case 1 : printf( "یک"); break; case 2 : printf( "دو"); break; case 3 : printf( "سه"); break; case 4 : printf( "چهار"); break; default : printf( "هیچ کدام"); } } |
خروجی:
1 | دو |
در برنامه زیر از دستورات شرطی if…elseif…else در جاوا استفاده شده است.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | public class DemoJava { public static void main(String []args) { int x = 45; if( x > 95) { System.out.println( "سطح دانش آموزش خوب است"); } else if( x < 30) { System.out.println( "سطح دانش آموز ضعیف است"); } else if( x < 95 && x > 30 ) { System.out.println( "سطح دانش آموز متوسط است"); } } } |
خروجی:
1 | سطح دانش آموز متوسط است |
در برنامه زیر از دستورات if…elif…else در زبان پایتون استفاده شده است.
1 2 3 4 5 6 7 8 9 10 | x = 45 if x > 95: print "سطح دانش آموز خوب است" elif x < 30: print "سطح دانش آموز ضعیف است" elif x < 95 and x > 30: print "سطح دانش آموز متوسط است" print "پایان" |
خروجی:
1 2 | سطح دانش آموز متوسط است پایان |
جلسه آموزش دستورات شرطی در برنامه نویسی نیز به پایان رسید.
در جلسه بعد حلقه ها در برنامه نویسی را آموزش خواهیم داد.