שינויים

תקציר שימושי מחשב, סמסטר ב תשעג, גיא בלשר

נוספו 1,151 בתים, 14:26, 19 ביוני 2013
/* פונקציות */
end
<div align="right">
 
===תרגילים===
 
====תרגיל 1 - האם ראשוני====
 
כתבו פונקציה שתקבל מספר טבעי <math>p</math>. הפונקציה תחזיר 1 אם הוא ראשוני ו־0 אחרת.
<div align="left">
(function [yn]=isprime(p
;yn=1
;k=2
while k<=sqrt(p) && yn==1
if mod(p,k)==0
;yn=0
end
;k=k+1
end
end
<div align="right">
 
בהסתמך על הפונקציה הנ"ל, כתבו תוכנית שתיצור וקטור של המספרים הראשוניים עד למספר טבעי נתון <math>n</math>.
<div align="left">
;[]=primes
;0=found
for k=1:n
1==(if isprime(k
;found=found+1
;primes(found)=k
end
end
<div align="right">
 
====תרגיל 2 - האם וקטור הוא פרמוטציה (תמורה)====
 
כתבו פונקציה המקבלת וקטור ובודקת אם הוא פרמוטציה של <math>1,...,n</math>.
<div align="left">
(function [yn] = ispermut (v
;(n=length(v
;(found=zeros(n,1
for i=1:n
;yn=1
if v(i)<1 || v(i)>n
;yn=0
else
;found(v(i))=1
end
end
;sum=0
for i=1:n
;(sum=sum+found(i
end
;(yn=(sum==n
end