首页 > 其他分享 >5.16打卡

5.16打卡

时间:2023-05-16 19:33:29浏览次数:31  
标签:prime 孪生 int 素数 5.16 printf 打卡 1000

一、问题描述:

本节要研究孪生素数的问题,先来看看什么是孪生素数。
所谓孪生素数指的是间隔为2的两个相邻素数,因为它们之间的距离已经近的不能再近了,如同李生兄弟一样,所以将这一对素数称为孪生素数。
显然,最小的一对孪生素数是(1,3)。我们可以写出3~100以内的孪生素数,一共有8对,分别是(3,5),(5,7),(11,13),(17,19)(29,31),(41,43),(59,61)和(71,73)。随着数字的增大,孪生素数的分布也越来越稀疏,人工寻找孪生素数变得非常困难。
关于孪生素数还存在着一个著名的猜想——孪生素数猜想,即孪生素数是否有无穷多对,这是数论中还有待解决的一个重要问题。此处我们只讨论在有限范围内的孪生素数求解问题。
本节要解决的问题是:编程求出3~1000以内的所有孪生素数。

二、设计思路:
在问题分析中,我们已经确定要采用穷举法逐一考察3~1000以内的每个整数,因此在本题的算法设计中需要采用循环结构。
在判断是否为素数时可以定义一个函数prime),每次判断整数n是否为素数时都将n作为实参传递给函数prime(),在prime()函数中使用前面介绍过的判别素数的方法进行判断。如果n为素数,则prime(函数返回值为1,否则prime()函数返回值为0。

三、程序流程图

 

 

 

 

四、代码实现

#include<stdio.h>

#include<math.h>

int prime(int n)

{

    int j;

    long k;

    k=sqrt(n)+1;

    for(j=2;j<=k;j++)

    {

        if(n%j==0)

            return 0;

    }

    return 1;

}

int main()

{

    int i,count=0;

    printf("The twin prime pairs between 3 and 1000 are: \n");

    for (i=3;i<1000;i++)

        if(prime(i)&&prime(i+2))

    {

        printf("(%-3d,%3d) ",i,i+2);

        count++;

        if(count%5==0)

            printf("\n");

 

    }

}

 

标签:prime,孪生,int,素数,5.16,printf,打卡,1000
From: https://www.cnblogs.com/wanbeibei/p/17406599.html

相关文章

  • c++打卡第二十八天
    一、以圆类Circle及立体图形类Solid为基础设计圆柱类Cylinder1、题目描述以点类Point及平面图形类Plane为基类公有派生圆类Circle,再以圆类Circle及立体图形类Solid为基类公有派生圆柱类Cylinder,main(void)函数完成对圆柱类Cylinder的测试。Point类结构说明:Point类的数据成员......
  • 2023.5.16编程一小时打卡
    一、问题描述:给出下面的多边形基类框架:classpolygon{protected:intnumber;//边数,最多不超过100条边private:intside_length[100];//边长数组public:polygon();//构造函数根据需要重载intperimeter();//计算多边形边长voiddisplay();//输出多边形边......
  • 第25天打卡
    问题: 源代码:#include<stdio.h>intmain(){inti,t=0,k;inta[3]={0};for(i=2;i<=1000;i++){k=i;while(k){a[t]=k%10;k=k/10;t++;}if(i==a[0]*a[0]*a[0]+a[1]*a[1]*a[1]+a[2]*a[2]*a[2])printf("%d",i);}printf("\n");}......
  • 编程打卡:C语言程序设计
    #include<iostream>#include<iomanip>usingnamespacestd;classMatrix{private:introw;intcolumn;int**mat=nullptr;public:Matrix(intr=1,intc=1):row(r),column(c){mat=newint*[row];f......
  • c++打卡练习(31)
    求两个整数的最大公因数流程图:伪代码:源代码:#include<iostream>usingnamespacestd;intmain(){ intx,y,i,k; cout<<"请输入两个整数"<<endl; cin>>x; cin>>y; if(x<y){ intt; t=x; x=y; y=t; } for(i=y;i>=1;i--){ if(x%i==0&&y%i=......
  • c++打卡练习(30)
    不重复的三位数用1234这四个数组成不重复的三位数,每个数位的数也不同,问都有谁流程图:伪代码:源代码:#include<iostream>usingnamespacestd;intmain(){ inta,b,c,d; for(a=1;a<=4;a++){ for(b=1;b<=4;b++){ for(c=1;c<=4;c++){ if(a!=b&&a!=c&&b!=c){ cout<<a&......
  • 【2023.05.16】水草缸搭建思路(阳光直射/散射)
    本文采用的是米家智能鱼缸图片环境分析鱼缸将放在院子里鞋柜上面,这个位置的话会有一个问题,那就是会有阳光直射或者散射周围没有位置可以放二氧化碳钢瓶不需要太多的打理,好养活,不需加热棒搭建思路一点点解决问题暴藻起初我的打算是放在储藏间的,家人要求放在院子里,院子里......
  • 5.16打卡
    #include<bits/stdc++.h>usingnamespacestd;intf(intn){if(n==1)return1;elsereturnf(n-1)+n;}intmain(){inta;cin>>a;cout<<f(a)<<endl;return0;} ......
  • 打卡26
    4.4将真分数变为埃及分数 算法流程图 #include<bits/stdc++.h>usingnamespacestd;constintMOD=1e9+7;voidsolve(){ longlonga,b,c; cin>>a>>b; while(1) { if(b%a)c=b/a+1; elsec=b/a,a=1; if(a==1) { printf("1/%ld\n",c); break; } e......
  • 5.16文本样式,列表样式,背景样式
    文本装饰:text-decotation:overline文本上出现上划线text-decoration:line-through文本出现删除线text-decoration:underline文本出现下划线      垂直对齐方式vertical-align:top顶部对齐vertical-align:middle中部对齐vertical:bottom底部对齐文本阴影:text=-shadow:{......