DEL 1
a)
function res = isPalindrome ( str ) n = size (str , 2); res = true ; for i =1: n if str (i) ~= str (n+1-i) res = false ; break end end end
b)
function res = sequenceFinder (sequence,start,stop ) len = 0; index = 0; for i = 1:length(sequence)-length(stop) if (length(start) <= length(sequence(i:end))) && strcmp(start,sequence(i:i+length(start)-1)) indexS = i; elseif (length(stop) <= length(sequence(i:end))) && strcmp(stop,sequence(i:i+length(start)-1)) indexE = i; if len < indexE -indexS len = indexE -indexS; index = indexS; end end end res = sequence(index:index+len+length(stop)-1); end
Eventuelt kan den lages litt enklere ved hjelp av matlabs strfind() funksjon.
DEL 2
a)
function a = isDevisable(a,b) a = ~mod(a,b); end
b)
function res = prime(a) res = 1; for b = 2:a-1 if isDevisable(a,b) res = 0; break; end end end function a = isDevisable(a,b) a = ~mod(a,b); end
c)
function res = prime(a) res = 1; if isDevisable(a,2) res = 0; return; end for b = 1:ceil(sqrt(a)) if isDevisable(a,(2*b+1)) res = 0; break; end end end