vba判断素数的程序代码(vb判断素数三种方法)
输入一个数,判断是不是素数
我在EXCEL写了一个VBA程序 ,如果 能找到非1或自身 的数外的因数的的,则显示出这些因数,如果 找不到因数 ,则显示 这是素数 。
方法是在EXCEL中 ,按Alt+F11,打开VBA编辑器,插入一个模块,把下面的代码贴进去,按F5执行
Sub?按钮1_Click()
????Columns("A:B").Select
????Selection.ClearContents
????Cells(2,?1).Select
????[a1]?=?"要分解的数"
????[b1]?=?"质因数"
????x?=?InputBox("请输入要分解的数:",?"输入框")
????[a2]?=?x
????k?=?2
????For?i?=?2?To?Int(x?/?2)
????????If?x?/?i?=?Int(x?/?i)?Then
????????????Cells(k,?2)?=?i
????????????k?=?k?+?1
????????End?If
????Next
????If?k?=?2?Then
????????[B2]?=?"这是素数"
????End?If
End?Sub
测试通过。
判断一个数是否为素数的vb程序代码是什么?
#includelt;stdio.hgt;
int sushu()
{
int i,leap=1;int m;
scanf("%d",m);
for(i=2;ilt;m;i++){
if(m%i==0)/*判断条件为真时,即表示m存在1和自身以外的其他因数。
判断条件是为假时,即不会执行此if下的语句,leap值不变,仍为1,程序继续向下执行*/
{
leap=0;break;
}
}
if(leap==1){
return leap;
}
}
int main()
{
switch(sushu())
{
case 1:
printf("Prime!\n");
break;
case 0:
printf("Not Prime!\n");
break;
}
return 0;
}
扩展资料:
在主函数中输入一个大于1的正整数,通过调用这个函数,输出该数是否为素数的信息。
如果该数为素数,输出信息为:
Prime!
若该数不为素数,则输出信息为:
Not Prime!
输入输出在主函数中进行
输入描述
输入一个大于1的正整数。
输出描述
对输入的正整数进行素数的判定:
如果该数为素数,输出信息为:
Prime!
若该数不为素数,则输出信息为:
Not Prime!
输出信息单独占一行。
输入样例
18
输出样例
Not Prime!
vba 判断一个数是否为素数的代码
写法有多种,以下代码可行,供参考:
Public?Function?prim(n?As?Integer)?As?Boolean
Dim?i,?j%,?bo?As?Boolean
For?i?=?3?To?n?/?2
???If?n?Mod?i?=?0?Then?bo?=?True:?Exit?For
Next
If?n?=?2?Or?bo?=?False?And?n??1?And?n?Mod?2?=?1?Then?prim?=?True
End?Function