Matlab训练2

本文档探讨孪生素数与素数的关系,解释大于5的素数与6倍数的位置关系,并通过反证法进行证明。同时,介绍了在Matlab中如何自定义函数,提供了一个函数定义的模板,并给出了使用示例。
摘要由CSDN通过智能技术生成

雄关漫道真如铁,而今迈步从头越。
从头越,
苍山如海,残阳如血。

Matlab官方帮助文档

该文档主要内容:孪生素数与判断素数之间的关系、以及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 n1 n + 1 n+1 n+1均为素数----------(1)
∴ \therefore

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值