雄关漫道真如铁,而今迈步从头越。
从头越,
苍山如海,残阳如血。
该文档主要内容:孪生素数与判断素数之间的关系、以及matlab自定义函数如何使用
3-1
clc;clear;
n=input('请输入一个正整数m:');
sum=0;
for i=1:n
if isprime(i)==true
sum=sum+i;
end
end
fprintf('正整数m以内的素数之和sum=%d\n',sum);
3-2
1)不用函数的方法:
clc;clear;
str=input('请输入一个字符串str:');
sum=0;
for i=1:length(str)
if str(i)>='A'&&str(i)<='Z'
sum=sum+1;
end
if str(i)>='a'&&str(i)<='z'
sum=sum+1;
end
end
fprintf('字符串str中的字母的个数sum=%d\n',sum);
2)isletter()函数,自行查询文档了解
(这题以此类推,统计所有数字个数,统计非数字和字母的个数,统计所有大写字母个数。。。)
3-3
clc;clear;
n=input('请输入一个正整数m:');
for i=n:(n*n)
if n==1
fprintf('紧随正整数m的素数为:2\n');
end
if isprime(i)==true
fprintf('紧随正整数m的素数为:%d\n',i);
break;
end
end
3-4
这题就要注意一下坑点,第一个数是表示元素的个数,并不在反序存放的序列之中,把他排开即可。
clc;clear;
n=input('请输入一个数组a:');
n = fliplr(n(2:length(n)))
3-5
clc;clear;
x=input('请输入一个正整数n:');
len=length(num2str(x));
k=mod(x*x,10^len);
if k==x
disp('1');
else
disp('0');
end
3-6
提到孪生素数,有一个有趣的现象:大于5的素数一定出现在6倍数的相邻左侧或右侧,但6倍数的左右两侧不一定就是素数。(自己可以举举例子噢)
证明如下:
我们知道,孪生素数指的是间隔为2的相邻素数。
那么假设 n − 1 n-1 n−1和 n + 1 n+1 n+1均为素数----------(1)
∴ \therefore ∴