大家好,我是阿汤哥。昨天我们求了1到1000之间的所有素数。今天我们来 找出十个最小的连续自然数,它们个个都是合数(非素数)。 先给出定义: 自然数:非负整数。0,1,2,3,...... 合数:如果一个整数可以被除了1和自身的其他整数整除,那么这个整数是合数。比如4,因为它除了可以被1和4整除,还可以被2整除,所以它是合数。 算法思想: 昨天的例子里(可以点击下面链接,查看昨天的文章),我们写了判断是否是素数的函数 is_prime_bumber(int a)。这个函数也可以用来判断是合数。如果一个整数作为参数的返回值是false,那么这个数是合数。
20200523文章:求1到1000之前所有的素数
//判断是否是素数(非合数)
bool is_prime_number(int a){
for (int i = 2; i if (a % i == 0){
printf("%d = %d * %d\n", a , i , a/i);
return false;
}
}
return true;
}
那么怎么找出十个最小的连续自然数,且它们个个都是合数呢? 我们只要对十个连续的整数调用函数is_prime_number()同时进行