函数来寻找下一个质数……

34视图(30天)
Jyothi Alugolu
Jyothi Alugolu 2018年2月19日
评论道: Stephen23 2021年7月28日
我有一个向量的大小1 * 152。现在我想找到下一个质数每个数字出现在向量的. .
例:向量是一个=[2 4 7 8]我要输出[2 5 7 11]. .即。,如果the number is a prime then that number will be the output i.e., like 2 and 7 in the given example...
我试着使用nextprime喜欢低于它给了以下错误:
案例1:
> > nextprime(信谊(100))
未定义的“nextprime”函数输入参数类型的“符号”。
案例2:
> > nextprime (3)
未定义的“nextprime”函数输入参数类型的“双”。

接受的答案

罗勒C。
罗勒C。 2018年2月19日
方法1 这个功能并不在MATLAB中运行,可以使用只能通过MuPAD笔记本接口。
  • 创建一个MuPAD接口使用以下代码
mupad
nb = allMuPADNotebooks
然后界面屏幕应弹出,你就可以继续使用了 nextprime (num) 函数。
方法2
  • 你也可以创建一个用户定义函数计算下一个质数。这个函数只需要一个非负整数作为参数
函数p = nextprime (n)
如果(isprime (n))
p = n;
其他的
(~ isprime (n))
n = n + 1;
结束
p = n;
结束
结束
4评论
Hicham Satti
Hicham Satti 2020年8月31日
%,将运行得很好
函数k = next_prime (n)
如果~ n > 0 | | n ~ =修复(n) | | ~ isscalar (n)
错误(“利用整数伴唱键盘标量参数”);
其他的
如果isprime (n + 1)
k = n + 1;
其他的
j = n + 1;
~ isprime (j)
k = + 1;
j = + 1;
结束
结束
结束

登录置评。

更多的答案(12)

阿拉法特打出行云流水
函数k = next_prime (n)
我= n + 1;
如果(isprime (i))
k =我;
其他的
(~ isprime(我))
我=我+ 1;
结束
k =我;
结束
结束

沃尔特·罗伯森
沃尔特·罗伯森 2018年2月19日
nextprime()添加到R2016b符号工具箱。
在发布之前,
函数宏指令(symengine“nextprime”信谊(100))

哈斯。乔希
哈斯。乔希 2020年4月25日
函数k = next_prime (n)
如果(~ isscalar (n) | | n < 1 | | n ~ =修复(n))
错误(' n应该积极标量ineger ! ! !”)
其他的
p = 1;
p < = 0
n = n + 1;
p = isprime (n)
结束
k = n
结束
结束
k = next_prime (79)
k =
83年
4评论
Stephen23
Stephen23 2021年7月28日
“代码会更好”
…并最终简化了下来

登录置评。


Buwaneka艺术观
Buwaneka艺术观 2020年6月21日
%有什么问题吗?要花太长时间运行和失败
函数n = next_prime (n)
k = n + 1;
~ isprime (k)
n = n + 1;
结束
结束
这有什么错?要花太长时间运行和失败。
2的评论
SAKSHI钱德拉
SAKSHI钱德拉 2020年7月22日
你的控制语句定义了k但没有什么相关的块语句检查
~ isprime (k)

登录置评。


MD SADIQUE伊克巴尔
MD SADIQUE伊克巴尔 2020年7月17日
涂油礼 n = next_prime (n)
k = n + 1;
~ isprime (k)
n = n + 1;
结束
结束
2的评论
SAKSHI钱德拉
SAKSHI钱德拉 2020年7月22日
你的控制语句定义了k但没有什么相关的块语句检查
~ isprime (k)

登录置评。


SAKSHI钱德拉
SAKSHI钱德拉 2020年7月22日
函数k = nxt_prime (n)
k = n + 1;
~ isprime (k)
k = k + 1;
结束
结束

Ravindra帕瓦尔
Ravindra帕瓦尔 2020年8月13日
编辑:Ravindra帕瓦尔 2020年8月13日
函数 k = next_prime (n) %函数定义
~ isprime (n + 1) %如果n + 1 '我们的for循环循环重新开始
n = n + 1;
结束
k = n + 1;
结束

什维塔年代
什维塔年代 2020年8月14日
%要发现下一个'没有。
函数p = next_prime (n)
如果(isprime (n))
p = n + 1;
其他的
(~ isprime (n))
n = n + 1;
结束
p = n;
结束
结束

Hicham Satti
Hicham Satti 2020年8月31日
%,将运行得很好
函数k = next_prime (n)
如果~ n > 0 | | n ~ =修复(n) | | ~ isscalar (n)
错误(“利用整数伴唱键盘标量参数”);
其他的
如果isprime (n + 1)
k = n + 1;
其他的
j = n + 1;
~ isprime (j)
k = + 1;
j = + 1;
结束
结束
结束
3评论
里克
里克 2020年9月8日
因为我只是一个人试图清理线程。你没有回答我的问题(无论是在这里,还是在其他next_prime线程)。

登录置评。


Pragyan破折号
Pragyan破折号 2020年9月19日
函数k = next_prime (n)
(~ isprime (n + 1))
n = n + 1;
结束
k = n + 1;
结束

马格达雷娜Frydrych
马格达雷娜Frydrych 2021年6月26日
函数k = next_prime (n)
如果~ isscalar (n) | | n < = 0 | |国防部(n - 1) ~ = 0;
错误(数量应该是一个正整数标量的)
结束
k = 0;
~ isprime (k)
n = n + 1;
k = n;
结束
结束
1评论
沃尔特·罗伯森
沃尔特·罗伯森 2021年6月26日
这是有效的吗?如果你目前在15日有测试16点吗?

登录置评。


Dikshita Madkatte
Dikshita Madkatte 2021年7月14日
编辑:Dikshita Madkatte 2021年7月14日
函数k = next_prime (n)
如果~ n > 0 | | n ~ =修复(n) | | ~ isscalar (n);
流(' n应该积极的浮点数值用)
结束
我= n + 1;
如果(isprime (i))
k =我;
其他的
(~ isprime(我))
我=我+ 1;
结束
k =我;
结束
结束
1评论
里克
里克 2021年7月14日
几句话:
流并不是一个错误。代码仍然会运行失败后检查。
你可以增加我的两个,因为2甚至是唯一',while循环将不会达到如果n等于1。
你忘了写文档的功能。这是要教什么?为什么不删除?

登录置评。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!