实例012:100到200的素数

100个不同类型的python语言趣味编程题

题目 判断101-200之间有多少个素数,并输出所有素数。

程序分析 判断素数的方法:用一个数分别去除2到这个数的平方根(math.sqrt()函数),如果能被整除,则表明此数不是素数,反之是素数。 用else可以进一步简化代码.

#初级:
import math
for i in range(100,200):
    flag=0
    for j in range(2,round(math.sqrt(i))+1):
        if i%j==0:
            flag=1
            break
    if flag:
        continue
    print(i)

#改进:
for i in range(100,200):
    for j in range(2,round(math.sqrt(i))+1):
        if i%j==0:
            break
    else:
        print(i)
#解本问题有多种方法,此方法并不是标准答案,读者可以自己尝试各种方法。

如果你喜欢我的文章,请滑到下方点个推荐再走.

以给我动力哦;转载请注名出处。然后..请多来做客鸭。

原文地址:https://www.cnblogs.com/wby-110/p/12592058.html

时间: 2024-08-09 23:46:10

实例012:100到200的素数的相关文章

C语言编程输出100到200的素数的两种方法,和三步优化(逐步优化)

了解素数(只能被自己和1整除的数)概念后,写代码会容易很多 <1>这个版本的程序没有经过优化,是根据最基本的概念写出的代码 #include<stdio.h> #include<stdlib.h> int main() { int i, m; for (i = 100; i <= 200; i++) { for (m = 2; m <= i; m++) { if (i == m)//输出条件 printf("%4d", i); if (i

将100到200之间的素数输出

#include<stdio.h>#include<math.h>int isSuShu(int n)//判断一个数是不是素数{ int i; for(i=2;i<=(int)sqrt(n);i++) { if(n%i==0) { return 0; } } return 1;}int main(){ int n; for(n=100;n<=200;n++) { if(isSuShu(n)) { printf("%d ",n); } } return

求100到200之间的素数

质数(prime number)又称素数,有无限个.一个大于1的自然数,除了1和它本身外,不能整除以其他自然数(质数),换句话说就是该数除了1和它本身以外不再有其他的因数. /** * 判断100 ~ 200间素数的个数 * * @author Administrator */ public class IsPrime { public static void main(String[] args) { // 遍历100 ~ 200 之间的素数 for (int i=100; i<=200; i

100到200之间的素数输出(初)

100到200间的素数的输出(初) #include<stdio.h> main() { int i; int j; printf(100~200间的素数有:\n); for(i=100;i<=200;i++) { for(j=2;j<i;j++) { if(i%j==0) break; } if(i==j) printf("%d ",i) } return 0; }

求100到200之内的素数和判断是否是闰年

1,求100到200内的素数 list = [] for a in range(100,200) k=0 for i in range(2,a) if a%i==0: list.append(a) print(list) def fun(): year = int(input("输入一个年份:")) if (year%400 == 0) or (year%4==0 and year%100 != 0): print("您输入的年份[%d]是润年"%year) els

Problem B: 调用函数,输出100到200之间的所有素数

#include <stdio.h> int isPrime(unsigned int n)//定义素数函数 { int i; if(n == 0 || n == 1) return 0; for(i = 2; i * i <= n; i++) { if(n % i == 0) return 0; } return 1; } int main(void)//主函数 { int i,count=0; for(i = 100; i <= 200; i++) { if(isPrime(i

C语言打印100到200之间的素数

用C语言打印素数,我们首先要了素数的相关定义:只有1和它本身两个因数的自然数,也就是说除了1和它本身外,不能被其他自然数整除的数就称为素数. 例如:101只能被1 和101 整除:103只能被1 和103 整除,所以他两都是素数 思路: 要判断一个数是否为素数可以验证从2开始到它本身的数里是否有可以被他取余数为0 的数字,如果有则证明它不是素数.反之则输出素数. 1 # include<stdio.h> 2 int main() 3 { 4 int i = 0; 5 int count = 0

(T.T) &nbsp; &nbsp; 打印100到200之间的素数

#include<stdio.h> #include<math.h> int main() { int m, k, i, n=0; for(m=100; m <= 200; m=m+1) { k = sqrt(m); for(i=2; i <= k; i++) if(m % i == 0) break; if(i >= k + 1) { printf("%5d",m); n = n + 1; } } return 0; } 默默地还是敲完的代码

100万以内的素数

设计算法如下: (1)用2,3,5,7逐个试除N的方法求出100以内的所有素数. (2)用100以内的所有素数逐个试除的方法求出10000以内的素数. 首先,将2,3,5,7分别存放在a[1].a[2].a[3].a[4]中,以后每求出一个素数,只要不大于100,就依次存放在A数组中的一个单元中.当我们求100-10000之间的素数时,可依次用a[1]-a[2]的素数去试除N,这个范围内的素数可以不保存,直接打印. import java.util.*; class Main{ public s