X
تبلیغات
نماشا
رایتل

(*blog_title*)

(*blog_short_description*)

Peducation

با هم بیاموزیم

جستجو
تقویم
مرداد 1395
شیدسچپج
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
بایگانی
نظرسنجی
چقدر از مطالب پورتال رضایت دارید؟

برنامه تعیین اعداد اول در متلب

در نرم افزار متلب (Matlab)، میخواهیم برنامه ای نوشته تا عددی را از کاربر دریافت و اعداد اول کوچکتر از آن را نشان دهد.

  

clear;clc;

N=input('Enter Number:');

fprintf('%d %d',2,3);

tt=5;

while tt<N

for kk=2:tt-1

if rem(tt,kk)==0

break

end

if kk==fix(sqrt(tt))

fprintf(' %d',tt);

break

end

end

tt=tt+2;

end

در خط اول تمام حافظه متلب (Matlab) با دستور clear و محیط خط فرمان با دستور clc پاک می شود. در خط دوم با دستور input عدد از کاربر دریافت می شود. خط سوم اعداد 2و3 را که اول هستند مستقیم و توسط دستور fprintf چاپ می کند برای همین در خط چهارم از عدد 5 برنامه شروع به بررسی تقسیم پذیری می کند.

در خط پنجم، حلقه while تا زمانی که اعداد بررسی شونده tt به عدد دریافتی از کاربر نرسد ادامه می یابد. در خط ششم حلقه for آغاز می شود و در خط هفتم تقسیم پذیری با دستور rem بررسی می شود. در این خط دستور rem باقی مانده تقسیم را می یابد و با دستور if اگر باقی مانده عدد صفر باشد یعنی دو عدد بر هم بخش پذیر بوده و عددی که در حال بررسی است اول نبوده و با دستور break از این بخش خارج می شود.

تا خط دهم بررسی اعداد ادامه می یابد. اگر عدد kk تا ریشه دوم عدد tt بالا بیاید و مقسوم علیه آن نباشد عدد اول است (دستور fix اعداد را گرد می کند) و توسط دستور fprintf خط یازدهم چاپ می شود. البته از مبحث ریاضیات می دانیم که بخواهیم اول بودن عدد x را بررسی کنیم، کافی است بخش پذیری از عدد دو تا ریشه عدد x بررسی شود.

نظرات (0)


نام :
ایمیل :
وب/وبلاگ :
ایمیل شما بعد از ثبت نمایش داده نخواهد شد