کلیدستان

نسخه‌ی کامل: کمک!! اعداد اول با استفاده از for تو در تو
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام دوستان
من 3-4 ساعته دنلابه این دستور هستم تا این سایتو پیدا کردم و با دنگ و فنگ ثبت نام کردم
خواهشا هر کی بلد هست دستور رو بنویسه
فردا باید ببرم واسه استاده ... Smile
اگه هم کسی بلده کد محاسبه 100 فاکتوریل رو بنویسه خواهششا کمک کنید
یه بار با دستور for یه بار با دستور while
خواههشششششششششششششش
سلام.
کدهای متلب برای تعیین اعداد اول در بازه 1 تا 100 :



کد:
clear all
close all
clc

numbers=0;
p=0;
for nn=2:100
    q=0;
    for mm=2:nn-1 % start from 2
        if (mod(nn,mm)==0)
            q=1;
        end
    end
    if (q==0)
        p=p+1;
        numbers(p)=nn;
    end
end
numbers

در بردار numbers، اعداد اول ذخیره می شوند. اعداد 2 تا 100 را تست کرده ایم که حاصل تقسیمشان به اعداد کوچکتر از خود برابر 0 می شود یا نه. دستور mod باقیمانده تقسیم یک عدد بر عدد دیگر را برمی گرداند. دقت شود که عدد 1 جزء اعداد اول حساب نمی شود.
نتیجه اجرای کد متلب ذکر شده به صورت زیر می باشد :



کد:
numbers =

  Columns 1 through 15

     2     3     5     7    11    13    17    19    23    29    31    37    41    43    47

  Columns 16 through 25

    53    59    61    67    71    73    79    83    89    97

درخواست دیگرتان را در یک ارسال دیگر پاسخ می دهم. 
کد متلب محاسبه 100 فاکتوریل (به هر دو روش) :


کد:
clear all
close all
clc

result_1=1;
for nn=1:100
    result_1=result_1*nn;
end
result_1

result_2=1;
p=0;
while(p~=100)
    p=p+1;
    result_2=result_2*p;
end
result_2 


نتیجه اجرای کد متلب :

کد:
result_1 =

  9.3326e+157


result_2 =

  9.3326e+157


موفق باشید. 
من دوباره تست کردم، هیچ مشکلی نداره.
فاکتوریل با for و while ، هر دو رو در یک برنامه نوشتم، قسمت while رو جدا نکنید و ابتدا همه رو با هم تست کنید و سپس اگر خواستید برنامه رو به دو قسمت تقسیم کنید.
خیییلی ممنون کارم راه افتاد
خدا خیرت بده Smile