您的位置 首页 > 数码极客

“取余符号“python取余符号?

练习C语言的第二天及第二题,我们来谈一谈对素数的判断。

提到素数,想必大家都不陌生。

素数,就是质数,大于1的一个正整数,指的是它不能被除了1与它本身以外的其它自然数整除,给几个最简单的例子,2就是素数、3也是素数、5也是素数。

很明显可以看到,这些数都不能被除了1与它本身以外的其它自然数整除。

那判断能否整除的条件,自然就是取余数。

比方以3为例,在1和它本身之间的数为2,而3除以2取余为1,不为零,则说明它为素数。

反之,以6为例,6除以2取余为0,则说明它不为素数。

那么,在知道如何判断素数的逻辑之后,我们就可以动手来写代码了。

在程序中,我们一般用mod来代表取余数,也就是用%这个符号来代表。

首先,我们要输入一个正整数N,也就是用到scanf。

之后对该正整数N进行判断。

注意,这里其实做的时候蛮有问题的,因为要判断是否为素数,就要让它对从1到它本身(开区间)进行整除,只要有一个能整除,那就说明不是素数,反之,则为素数。

需要用到一个for循环来进行遍历,再在for循环里进行条件判断。

如图所示:

在最开始做的时候,诶,我按照自己的逻辑慢慢写的,可还是产生了问题,为什么会这样呢,原因归根结底在于for循环里写printf打印语句,执行了很多次,导致最终输出的结果多种多样。

所以,为了避免这个问题,避免重复打印的问题,必须得把打印的语句给挪到for循环外面。

那挪到外面之后呢,我们就要对for循环中进行处理,可以用一个计数来代替,比方说当判断不为素数的时候,计数加一,反之,则计数不变化。

之后再在for循环之外对这个计数进行判断不就行了么。

代码如下所示:

#include<; int main(){ int N = 0; int count = 0; scanf("%d", &N); while(N<=1){ printf("please input again\n"); scanf("%d", &N); } for(int i = 2; i < N; i++){ if(N%i == 0){ count++; } } if(count==0){ printf("it is a prime\n"); } else{ printf("it is not a prime\n"); } }

结果:

总结:总的来说,判断是否为素数还是蛮简单的,当然了,判断是否为素数其实不一定就是用这种方法,也可以用其它方法,欢迎大家一起讨论。

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“取余符号,python取余符号,c语言取余符号,数学取余符号”边界阅读