پروژه ی ارسالی - اسکریپت چالش اعداد انتخابی !! :: Mr Python | مستر پایتون

پروژه ی ارسالی - اسکریپت چالش اعداد انتخابی !!

  • ۳۹۳
فرستنده : مهدی توازهی
نام پروژه : اسکریپت چالش اعداد انتخابی 
راه ارتباطی با فرستنده (Telegram) : Mahdi_Tavazohi@
دسته بندی : python
توضیحات : شما عددی را بین ۱ تا ۱۰۷ در ذهن خود در نظر میگیرید و پس از اجرا ، اسکریپت با پرسیدن 7 سوال در رابطه با محدوده ی عدد شما ، با تکنیکی خاص عدد شما را به درستی حدس میزند !!! 

 

سورس کد :

print("Choose from 1 to 107 digits\n")
print("If your number is in the list, enter the letter y, otherwise enter the letter n\n")
list_card=[[1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39,41,43,45,47,49,51,53,55,57,59,61,63,65,67,69,71,73,75,77,79,81,83,85,87,89,91,93,95,97,99,101,103,105,107]
,[2,3,6,7,10,11,14,15,18,19,22,23,26,27,30,31,34,35,38,39,42,43,46,47,50,51,54,55,58,59,62,63,66,67,70,71,74,75,78,79,82,83,86,87,90,93,94,95,98,99,102,103,106,107]
,[4,5,6,7,12,13,14,15,20,21,22,23,28,29,30,31,36,37,38,39,44,45,46,47,52,53,54,55,60,61,62,63,68,69,70,71,76,77,78,79,84,85,86,87,92,93,94,95,100,101,102,103]
,[8,9,10,11,12,13,14,15,24,25,26,27,28,29,30,31,40,41,42,43,44,45,46,47,56,57,58,59,60,61,62,63,72,73,74,75,76,77,78,79,88,89,90,91,92,93,94,95,104,105,106,107]
,[16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95]
,[32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,96,97,98,99,100,101,102,103,104,105,106,107]
,[64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107]]
sum=0
count=0
for i in range(0,7):
    print('\n')
    card=list_card[i]
    print(card)
    x=input("\ny or n :")
    if(x=='y'):
        sum=sum+card[0]
    else:
        continue
print("\nYour chosen number is %s"%(sum))    

 

توضیحات  فرستنده راجع به اسکریپت :

سلام اول از همه بگم بنده اطلاع درستی از الگوریتمش ندارم برمیگرده به ریاضیات،این سورس کد هم برای تمرین نوشتم و گفتم به ادمین اطلاع بدم اگه به نظر ایشون جالب بود اپلود کنه یه کلیاتی ازش بگم یه سری کارت داشتم که ارقام 1 تا 107 به صورت خاصی روش نوشته شده بود  من اول از همه اعداد مربوط به هرکارتی را با ترتیب خود کارت ریختم داخل لیست، یعنی هر لیست مربوط به یکی از اون کارت ها میشه من برای این ک هر دفعه نخام اسم متغییر را صدا بزنم که براتون لیست را برگردونه اومدم همه متغییر هارو ریختم توی یک لیست  یعنی یک لیست که مقدار داخلیش چند لیست هست

x=[[1,2,3,5,9],[7,8,9,10],[2,3,9,28,58]]

برای مثال در بالا لیست اولی مقدار کارت اولی لیست دومی مقدار کارت دومی و ...
این کارو کردم چون راحت تر میشه با حلقه for روش مانور داد اول از همه اومدم لیست را برگردوندم اینجا کاربر یا کلمه ی y را وارد میکنه یا n اگه y  بود میفهمم ک عدد انتخابیش تو لیست بوده پس باید اولین رقم سمت چپی اون لیست را بریزم توی یک متغییر ک من متغییر  sum  هست.
 بعد میره سراغ لیست بعدی و برمیگردونه اگه عدد کاربر تو لیست باشه دوباره y  را وارد میکنه و شرط برقرار میشه و اگه نباشه  کاربر n را وارد میکنه و حلقه ادامه پیدا میکنه و میره لیست بعدی این روند همینطور تکرار میشه تا لیست ها تموم بشن و در نهایت میاد مقدار اول همه ی لیست هایی که با کلمه y  داخل شرط رفتن  را برمیگردونه ک میشه عدد انتخابی کاربر.
برای مثال 
من عدد سه را انتخاب میکنم
و لیست اول این اعدا را برمیگردونه
1,2,3,5,9
میزنم y  چون عدد ۳ داخل لیست هست برنامه میاد عدد 1را میریزه داخل متغییر sum  بعد حلقه دوباره تکرار میشه و  لیست  دوم را نمایش میده
7,8,9,10
من میزنم  n چون عدد سه داخل لیستی که چاپ شده نیست حلقه از اول تکرار میشه و میره لیست بعدی
2,3,9,28,58
اینجا بنده باز y را میزنم چون عدد انتخابی من در لیست وجود داره این روند همینطوری ادامه پیدا میکنه تا لیست تموم بشه در اخر میاد ارقام اول لیست هایی ک داخل شرط رفته بودن را باهم جمع میکنه و برمیگردونه ک میشه عدد انتخابی من به این صورت
از لیست اول 
1
از لیست دوم 
2
ک جمعشون میشه 3و برنامه هم همین عدد را برمیگردونه  ک عدد انتخابی من بود.

 

 

 

جهت ارسال پروژه های خود :

پروژه ی خود به همراه توضیح آن  ارسال کنید به  : 

mrpythonblog@gmail.com


 Telegram Channel : @mrpythonblog

  • خیلی باحال بود.

    یکسری کارت های شعبده بازی هم دیده بودم که مثل همین عمل میکردن

    پاسخ:
    درود .
    بله بنابر توضیحات فرستنده مثل اینکه ایشون هم از چنین کارت هایی استفاده کردن برای نوشتن اسکریپت .
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی