تمرین جلسه ی گذشته را حل کردید؟ جواب تمرین جلسه ی پیش در حالتی بود که هیچ کدام از مقادیر با هم مساوی نبودند حالا شما اگر می خواهید بیشتر تمرین کنید می توانید در این حالت را هم بنویسید و جواب را به ایمیلم که در پایان آموزش آمده بفرستید تا از صحت آن مطمئن شوید، برنامه هایی که با if نوسته می شوند معمولا دارای پیچیدگی خاصی نیستند.
b1=float(input())
b2=float(input())
b3=float(input())
if(b1>b2 and b1>b3):
r1=b1
if(b2>b3):
r2=b2
r3=b3
if(b2<b3):
r2=b3
r3=b2
if(b2>b1 and b2>b3):
r1=b2
if(b1>b3):
r2=b1
r3=b3
if(b1<b3):
r2=b3
r3=b1
if(b3>b1 and b3>b2):
r1=b3
if(b2>b1):
r2=b2
r3=b1
if(b2<b1):
r2=b1
r3=b2
print(r1,'>',r2,'>'r3)
در این جلسه قرار است دستور مهم حلقه و مقدمه ای از کتابخانه ی time را فراگیرید، با ما همراه باشید.
a=0
b=50
while b>a:
b=b-1
print('Hi')
برنامه مانند if ابتدا عبارت جلوی while را بررسی می کند و در صورت درستی دستورات درون آن را اجرا می کند اما فرقش با if این است که پس از اتمام دستورات داخلش دوباره عبارت جلوی while را بررسی و اگر درست بود دوباره دستورات داخل حلقه را اجرا می کند، و این کار را تا زمانی ادامه می دهد که عبارت جلوی while درست باشد، برنامه ی بالا می گوید تا زمانی که متغیر b بزرگتر از متغیر a است از b یکی کم کند و زمانی که دیگر b بزرگتر از a نباشد چاپ می کند Hi.
مثال:
می خواهیم برنامه ای بنویسیم که تعداد ارقام عدد ورودی را چاپ کند:
n=int(input())
count=0
while n!=0:
count=count+1
n=n//10
print(count)
count+=n
count-=n
count*=n
بجای نوشتن count=count/n می توان نوشت:
count/=n
بجای نوشتن count=count**n می توان نوشت:
count**=n
بجای نوشتن count=count//n می توان نوشت:
count//=n
بجای نوشتن count=count%n می توان نوشت:
count%=n
بطور کلی به این شکل می توان نوشتن برنامه را برای خود آسان نمود، مثلا برنامه ی تعداد ارقام ورودی با این تسهیل کننده ها به این شکل می شود:
n=int(input())
count=0
while n!=0:
count+=1
n//=10
print(count)
حالا دیگر شما می توانید از حلقه ی while استفاده کنید.
حالا نوبت استفاده از کتابخانه time است، به کمک این کتابخانه می توانید کارهای مختلفی با زمان در برنامه ی خود بکنید، در ابتدای هر برنامه ای که می خواهید از time در آن استفاده کنید باید بنویسید:
import time
import time
t1=time.time()
برنامه ی اصلیمان
t2=time.time()
print(t2-t1)
import time
t1=time.time()
n=int(input())
count=0
while n!=0:
count+=1
n//=10
print(count)
t2=time.time()
print('time',t2-t1)
بعضی وقت ها هم نیاز خواهید داشت سرعت اجرای برنامه تان را پایین آورید:
import time
n=int(input())
count=0
while n!=0:
count+=1
n//=10
print(count)
time.sleep(0.1)
(هر چه عددی که در پرانتز sleep وارد می کنید بیشتر باشد برنامه ی شما کندتر می شود، برای مثال اگر عدد 10 را وارد کنید برنامه در آن خط 10ثانیه می ایستد و سپس خط بعد را اجرا می کند)
تمرین ها:
1. ب ب ک (برنامه ای بنویسید که) 100عدد از کاربر گرفته، میانگین آن ها را چاپ کند.
2. ب ب ک یک عدد و توان آن را گرفته و بدون استفاده از عملگر توان (**) حاصل را بدست بیاورد.
3. ب ب ک یک ورودی بگیرد و بزرگترین توانی از 2 که از ورودی کوچکتر است را چاپ کند مثال:
ورودی 25 ==> خروجی 16 ورودی 281 ==> خروجی 256
4. ب ب ک یک ورودی بگیرد و بگوید ورودی عددی کامل است یا خیر (عدد کامل=عددی که جمع مقسوم علیه هایش مساوی با خودش شود مانند 28: 1+2+4+7+14=28)
5. ب ب ک ورودی بگیرد و فاکتویل ورودی را حساب و چاپ کند:
n!=1*2*3*4*...*n
6. ب ب ک دو عدد گرفته ب م م (بزرگترین مقسوم علیه مشترک) آن ها را چاپ کند.
7. ب ب ک ورودی بگیرد و رقم هایش را در خط های جداگانه چاپ کند. مثلا
ورودی 8561
خروجی:
1
6
5
8
8. ب ب ک ورودی بگیرد و مجموع ارقامش را چاپ کند:
ورودی 348==>خروجی 15
جلسه سوم به پایان رسید اگر مشکلی تا اینجا داشتید یا خواستید جواب تمرینها را بگیرید به ایمیل زیر پیغام دهید:
mahdiamiri36@gmail.com
نمایش دهد.