دستور if تو در تو
می توان از دستور if تو در تو در ++C استفاده کرد. یک دستور ساده if در داخل دستور if دیگر.
if (condition) { code to execute; if (condition) { code to execute; } else if (condition) { if (condition) { code to execute; } } } else { if (condition) { code to execute; } }
اجازه بدهید که نحوه استفاده از دستور if تو در تو را نشان دهیم :
1: #include2: #include 3: using namespace std; 4: 5: int main() 6: { 7: int age; 8: string gender; 9: 10: cout << "Enter your age: "; 11: cin >> age; 12: 13: cout << "Enter your gender (male/female): "; 14: cin >> gender; 15: 16: if (age > 12) 17: { 18: if (age < 20) 19: { 20: if (gender == "male") 21: { 22: cout << "You are a teenage boy." << endl; 23: } 24: else 25: { 26: cout << "You are a teenage girl." << endl; 27: } 28: } 29: else 30: { 31: cout << "You are already an adult." << endl; 32: } 33: } 34: else 35: { 36: cout << "You are still too young." << endl; 37: } 38: }
Enter your age: 18 Enter your gender: male You are a teenage boy. Enter your age: 12 Enter your gender: female You are still too young.
اجازه بدهید که برنامه را کالبد شکافی کنیم. ابتدا برنامه از شما درباره سن تان سوال می کند (خط 10). در خط 13 درباره جنس تان از شما سوال می کند.سپس به اولین دستور if می رسد(خط 16). در این قسمت اگر سن شما بیشتر از 12 سال باشد برنامه وارد بدنه دستور if می شود در غیر اینصورت وارد بلوک else(خط 34)مربوط به همین دستور if می شود.
حال فرض کنیم که سن شما بیشتر از 12 سال است و شما وارد بدنه اولین if شده اید. در بدنه اولین if دو دستور if دیگر را مشاهده می کنید. اگر سن کمتر 20 باشد شما وارد بدنه if دوم می شوید و اگر نباشد به قسمت else متناظر با آن می روید(خط 29). دوباره فرض می کنیم که سن شما کمتر از 20 باشد، در اینصورت وارد بدنه if دوم شده و با یک if دیگر مواجه می شوید(خط 20). در اینجا جنسیت شما مورد بررسی قرار می گیرد که اگر برابر “male” باشد، کدهای داخل بدنه سومین if اجرا می شود در غیر اینصورت قسمت else مربوط به این if اجرا می شود(خط 24). پیشنهاد می شود که از if تو در تو در برنامه کمتر استفاده کنید چون خوانایی برنامه را پایین می آورد.
سلام ,خسته نباشید
خیلی ممنون بابت سایت پر محتواتون و همچنین طرز بیان فوق العاده!!!
شما گفتید که بهتره از if های تو در تو استفاده نکنیم.
پس برای نوشتن این برنامه باید چی کارکنیم ؟؟
آیا باید شرط را در یک if و با قرار دادن & بنویسیم؟
سلام، لطف دارین
نه اینکه اصلا استفاده نکنید، سعی کنید حتی الامکان استفاده نکنید، چون خوانیی کدتون رو پایین میاره، بنده خودم تو برنامه هام، بسیاری از مواقع استفاده می کنم، چون تنها راهه!!