نمایش نتایج 1 تا 2 از 2

نام تاپیک: اشکال جزئی در جواب برنامه اعداد اول

  1. #1

    اشکال جزئی در جواب برنامه اعداد اول

    سلام دوستان
    وقتتون بخیر
    من یه برنامه نوشتم به زبان پایتون که اعداد اول رو مشخص کنه.ولی 2 رو جز اعداد اول چاپ نمیکنه.میشه کمک کنین برطرفش کنم؟
    در اصل من این برنامه رو برای سوال مشخص کردن اعداد اول زیر 100 نوشتم.چون تازه کارم ساده نوشتم.هنوز تابع و این چیزا رو یاد ندارم.ممنون میشم ساده پاسخ بدین


    start = 1
    end = 100

    for i in range(start, end + 1):
    if i > 1:
    for n in range(2, i//2 + 2):
    if (i % n) == 0:
    break
    else:
    if n == i//2 + 1:
    print(i)

  2. #2
    کاربر تازه وارد آواتار sd702004
    تاریخ عضویت
    مرداد 1398
    محل زندگی
    مشهد
    پست
    90

    نقل قول: اشکال جزئی در جواب برنامه اعداد اول

    نوشتن اولین عبارت شرطی داخل حلقه که بزرگتر از 1 بودن i رو چک میکنه ضرورتی نداره و به جاش میشه گفت که start از 2 شروع بشه. برای کنترل اول بودن عدد هم فقط یک شرط لازمه تا کنترل کنه که اگه اون عدد به تمام اعداد کمتر از خودش (بزرگتر از 1) بخش‌پذیر نبود بعنوان اول در نظر گرفته بشه. بنابراین کد رو میشه به این صورت بازنویسی کرد:
    start = 2
    end = 100

    for i in range(start, end+1):
    for n in range(2, i):
    if (i % n) == 0:
    break
    else:
    print(i)

    توضیح: در حلقه for کد قسمت else در صورتی اجرا میشه که حلقه break نشده باشه

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •