جلسه هشتم

				
					age = 25
gender = 'male'
if age >= 18:
    if gender == 'male':
        print("You are an adult male.")
    else:
        print("You are an adult female.")
else:
    if gender == 'male':
        print("You are a minor male.")
    else:
        print("You are a minor female.")
				
			
				
					age =25
is_student =True
if age >=18and is_student:
    print("You are an adult student.")
else:
    print("You are not an adult student.")
				
			
				
					temperature = 35
is_raining = False
if temperature > 30 or is_raining:
    print("It's hot or raining outside.")
else:
    print("It's not hot and not raining outside.")
				
			

جلسه هشتم

شرط‌های تودرتو

در پایتون، شما می‌توانید شرط‌های تودرتو (nested conditions) را به کار ببرید. این یعنی شما می‌توانید یک ساختار شرطی را درون ساختار شرطی دیگری قرار دهید.

ساختار کلی شرط‌های تودرتو به این شکل است:

if شرط1:

ifشرط2:

# انجام این بلوک اگر هر دو شرط1 و شرط2 برقرار باشند

else:

# انجام این بلوک اگر شرط1 برقرار باشد اما شرط2 برقرار نباشد

else:

# انجام این بلوک اگر شرط1 برقرار نباشد

ادامه کد

در این ساختار، ابتدا شرط1 بررسی می‌شود. اگر شرط1 برقرار باشد، آنگاه شرط2 بررسی می‌شود. اگر هر دو شرط برقرار باشند، بلوک اول اجرا می‌شود. اگر شرط1 برقرار باشد اما شرط2 برقرار نباشد، بلوک دوم اجرا می‌شود. و اگر شرط1 برقرار نباشد، بلوک سوم اجرا می‌شود و ادامه کد در هر صورت اجرا میشود.

شرط‌های تودرتو می‌توانند به هر عمق دلخواهی تعریف شوند و می‌توانند ترکیبی از `if`، `elif` و `else` باشند.

مثال:

.

.

.

.

.

.

در این مثال، ابتدا سن بررسی می‌شود. اگر سن 18 سال یا بیشتر باشد، جنسیت بررسی می‌شود. اگر جنسیت مرد باشد، پیام “You are an adult male.” چاپ می‌شود، و اگر جنسیت زن باشد، پیام “You are an adult female.” چاپ می‌شود.

اگر سن کمتر از 18 باشد، دوباره جنسیت بررسی می‌شود. اگر جنسیت مرد باشد، پیام “You are a minor male.” چاپ می‌شود، و اگر جنسیت زن باشد، پیام “You are a minor female.” چاپ می‌شود.

شرط‌های تودرتو به ما اجازه می‌دهند تا منطق پیچیده‌تری را در برنامه‌هایمان پیاده‌سازی کنیم.

در بسیاری از موارد می‌توان به جای استفاده از شرط‌های تودرتو (nested conditions) از عملگرهای منطقی استفاده کرد. این دو روش هر دو برای حل مسائل پیچیده قابل استفاده هستند، اما انتخاب یکی از آن‌ها ممکن است کد را سازمان‌یافته‌تر و خوانا‌تر کند.

عملگرهای منطقی

در پایتون، عملگرهای منطقی به ما امکان می‌دهند تا شرط‌های پیچیده‌تری را بررسی کنیم. این عملگرها عبارت‌اند از:

  1. `and`: این عملگر منطقی نتیجه `True` را برمی‌گرداند اگر و تنها اگر هر دو شرط همزمان برقرار باشند .

.

.

.

.

.

در مثال اول، هر دو شرط `age >= 18` و `is_student` باید `True` باشند تا بلوک اول اجرا شود.

  1. `or`: این عملگر منطقی نتیجه `True` را برمی‌گرداند اگر حداقل یکی از شرط ها برقرار باشد.

# استفاده از عملگر ‘or’

.

.

.

در مثال دوم، اگر دمای هوا بالای 30 درجه باشد یا اگر بارندگی وجود داشته باشد (یا هر دو)، بلوک اول اجرا می‌شود.

  1. `not`:این عملگر منطقی نتیجه عکس یک عبارت را برمی‌گرداند. یعنی اگر عبارت `True` باشد، `not` آن `False` است و اگر عبارت `False` باشد، `not` آن `True` است.

# استفاده از عملگر ‘not’

.

.

 .

در مثال سوم، اگر `is_weekend` `False` باشد (یعنی `not` آن `True` باشد)، بلوک اول اجرا می‌شود.

مثال 2 : برنامه ایی که مضرب های اعداد 3 و 5 را چاپ کند ولی مضرب 7 را چاپ نکند عدد به دلخواه از ورودی دریافت شود ؟

.

 .

.

.

مثال 3 : برنامه ای بنویسید ک مضربی از 3 باشد ولی مضربی از 7 نباشد.

 

				
					while True:
    x = float(input("Enter A Number :"))
    if (x % 3 ==0 or x % 7 == 0) and (x % 3 != 0 or x % 7 != 0) :
        print (" x ya mazrab 3 ast ya 7 ")
    else:
        print("nmibashad")
    if x == 0 :
        break
				
			
				
					while True :
    x = float(input("Enter A Number"))
    if( x % 3 == 0) and (x % 7 ==0) :
        print ("x mazrab moshtarak")
    else:
        print("x mazrab moshtarak Nist")
    if x ==100:
        break
				
			
				
					is_weekend = False
if not is_weekend:
    print("It's a weekday.")
else:
    print("It's a weekend.")