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

نام تاپیک: برنامه ای بنویسید که اعداد اول از یک تا صد را تشخیص داده و چاپ نماید؟

  1. #1

    Post برنامه ای بنویسید که اعداد اول از یک تا صد را تشخیص داده و چاپ نماید؟

    برنامه ای بنویسید که اعداد اول از یک تا صد را تشخیص داده و چاپ نماید؟
    گیر جواب کجاست
    int a,b;
    printf("\n adad aval");
    printf("\n");
    for(a=3;a<100;a++)
    for(b=2;b<a;b++)
    if (a%b==1)
    printf("%-5d",b);

  2. #2
    کاربر تازه وارد آواتار dele514
    تاریخ عضویت
    مرداد 1393
    سن
    22
    پست
    71

    نقل قول: برنامه ای بنویسید که اعداد اول از یک تا صد را تشخیص داده و چاپ نماید؟

    سلام.
    اول اینکه اعداد اول از 2 شروع میشن.(خط 4 (a=3))
    دوم اینو هر چی زور زدم نقهمیدم(خط 6 , 7)
    سوم اینو ببین فقط نخند چون شهادته.

    int a,b;
    bool c=false;
    printf("\n adad aval");
    printf("\n");
    for(a=2;a<100;a++)
    {
    for(b=2;b<a;b++)
    {
    if (a%b==0)
    {
    c=true;
    break;
    }
    else
    c=false;
    }

    if(c==false)
    printf(a);
    }

    آخرین ویرایش به وسیله dele514 : دوشنبه 01 دی 1393 در 01:33 صبح

  3. #3
    کاربر دائمی آواتار Ananas
    تاریخ عضویت
    آبان 1390
    محل زندگی
    طول 50 و عرض 34 درجه
    سن
    32
    پست
    894

    نقل قول: برنامه ای بنویسید که اعداد اول از یک تا صد را تشخیص داده و چاپ نماید؟

    نقل قول نوشته شده توسط dele514 مشاهده تاپیک
    سلام.
    اول اینکه اعداد اول از 2 شروع میشن.(خط 4 (a=3))
    دوم اینو هر چی زور زدم نقهمیدم(خط 6 , 7)
    سوم اینو ببین فقط نخند چون شهادته.

    int a,b;
    bool c=false;
    printf("\n adad aval");
    printf("\n");
    for(a=2;a<100;a++)
    {
    for(b=2;b<a;b++)
    {
    if (a%b==0)
    {
    c=true;
    break;
    }
    else
    c=false;
    }

    if(c==false)
    printf(a);
    }

    سلام.
    کد شما درست عمل میکنه ولی بلاک else ای که داخل حلقه هست نیازی نیست که اینهمه اجرا بشه. کافیه قبل از حلقه یکبار مقدار پیش فرض c رو تنظیم کنید. مثلا :

    int a,b;
    printf("\n adad aval");
    printf("\n");
    for(a=3;a<100;a++)
    {
    bool ift = true;
    for(b=2;b<a;b++)
    {
    if (a%b == 0)
    {
    ift = false;
    break;
    };
    };
    if (ift) printf("%-5d",a);
    };

    و نکته ی دیگه اینکه لازم نیست که تمام اعداد قبل از یک عدد چک بشه تا بفهمیم اول هست یا نه. کافیه به اعداد اول قبل از خودش که کوچکتر و مساویه مجذور اون عدد باشن بخش پذیر نباشه. مثلا برای 25 کافیه که 2 و 3 و 5 رو تست کنیم. مثال :

    #define COUNT 1000
    int a,b;
    bool ift;
    int aval[COUNT];
    int index = 1;

    aval[0] = 2;
    a = 2;
    while (index < COUNT)
    {
    ift = true;
    int majzoor = (int)sqrt((float)a);
    for(b = 0; b < index; b++)
    {
    if (a % (aval[b]) == 0)
    {
    ift = false;
    break;
    };
    if (aval[b] > majzoor) break;
    };
    if (ift) aval[index++] = a;

    a++;
    };
    printf("\n adad aval");
    printf("\n");
    for (int i = 0; i < index; i++)
    {
    printf("%-10d", aval[i]);
    };

    با تنظیم مقدار COUNT میتونید تعداد اولین اعداد اولی که پیدا میکنیم رو مشخص کنیم. دقت کنید که COUNT تعداد اعداد اولمونه! نه محدوده ی اونها. مثلا برای اینکه اعداد اول زیر صد رو پیدا کنیم کافیه که مقدار COUNT رو 25 تنظیم کنیم.
    من مقدار COUNT رو به 100000 تغییر دادم. بالافاصله بعد از اجرا همه رو حساب کرد و برای چاپش هم حدودا 5 ثانیه طول کشید. که آخرین عدد چاپ شده 1299709 بود. این روش به شدت سریع تر از روش قبلیه

  4. #4

    نقل قول: برنامه ای بنویسید که اعداد اول از یک تا صد را تشخیص داده و چاپ نماید؟

    سلام خسته نباشید میشه همین سوال رو در محیط #c بگید
    با حلقه for و while
    آخرین ویرایش به وسیله Fateme.79.19 : سه شنبه 06 خرداد 1399 در 00:19 صبح


تاپیک های مشابه

  1. سوال: برنامه ی تشخیص اعداد اول
    نوشته شده توسط air.hacker در بخش الگوریتم، کامپایلر، هوش مصنوعی و ساختمان داده ها
    پاسخ: 4
    آخرین پست: سه شنبه 11 فروردین 1394, 11:40 صبح
  2. سوال: مشکل در اجرای این برنامه ( تعداد اعداد اول )
    نوشته شده توسط andaron در بخش برنامه نویسی با Borland C++‎ Builder
    پاسخ: 2
    آخرین پست: سه شنبه 09 آذر 1389, 00:54 صبح
  3. راهنمایی در مورد برنامه اعداد اول و کامل
    نوشته شده توسط iceboy67 در بخش برنامه نویسی در 6 VB
    پاسخ: 1
    آخرین پست: شنبه 17 فروردین 1387, 21:16 عصر
  4. برنامه ای که اعداد اول بین 2 عدد را محاسبه می کند
    نوشته شده توسط kiani.mehdi در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 0
    آخرین پست: پنج شنبه 10 خرداد 1386, 00:20 صبح
  5. برنامه اعداد اول
    نوشته شده توسط وحید1365 در بخش برنامه نویسی در 6 VB
    پاسخ: 3
    آخرین پست: یک شنبه 27 دی 1383, 17:14 عصر

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

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