精华内容
下载资源
问答
  • 输出素数

    2020-03-31 20:21:56
    今天分享一下关于素数的...请输出前N的素数 #include<iostream> using namespace std; int main() { int N; cin>>N; bool a[N]={0}; for(int i=2;i<=(N+1)/2;i++) { if(!a[i]) { for(int j...

    今天分享一下关于素数的内容
    请看题:
    (呃呃呃呃 口述吧)
    请输出前N的素数

    #include<iostream>
    using namespace std;
    int main()
    {
     int N;
     cin>>N;
     bool a[N]={0};
     for(int i=2;i<=(N+1)/2;i++)
     {
      if(!a[i])
      {
       for(int j=i+i;j<N;j=j+i)
       {
        a[j]=1;
       }
      }
     }
     for(int i=2;i<N;i++)
     {
     if(!a[i])
     cout<<i<<" "; 
     }
     
     return 0;
    }

    看看结果:
    例如输出前50的素数
    前50
    分析一下 ,输出素数问题是常见的问题,此方法可以做一个补充。
    由素数概念可知,素数是只是一和它本身其他的数不能整除它。所以第一个循环 i 从2开始作为基本数,然后第二个循环来标记它的倍数,被当前循环标记的肯定不是素数,因为它能被当前 i 整除,以此类推 i 直到取到这个范围的一半即可。因为 i 超出范围一半后它的倍数就会超出这个范围。
    最后
    输出没有被标记的数即可。

    展开全文
  • C程序2 输出素数

    2019-01-04 11:40:45
    程序2 输出素数 题目:判断 101-200 之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除 2 到 sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 自己理解: 素数又...

    程序2 输出素数

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

    程序分析:判断素数的方法:用一个数分别去除 2 到 sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

    自己理解:
    素数又称为质数,一个大于1 的自然数,除了1和它自身外,不能被其他数整除,这个数被称为素数。
    要判断101到200之间的素数,则要从2开始,依次去除,有一个能除尽就说明不是素数,排除跳下一个,继续执行。

    代码

    在这里插入图片描述

    运行结果

    在这里插入图片描述

    展开全文
  • Python编程之输出素数

    千次阅读 2019-03-23 08:31:47
    问题描述:判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 程序源码: #!/usr/bin/python # -...

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

    程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。  

    程序源码:

    
    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
     
    h = 0
    leap = 1
    from math import sqrt
    from sys import stdout
    for m in range(101,201):
        k = int(sqrt(m + 1))
        for i in range(2,k + 1):
            if m % i == 0:
                leap = 0
                break
        if leap == 1:
            print '%-4d' % m
            h += 1
            if h % 10 == 0:
                print ''
        leap = 1
    print 'The total is %d' % h
    

    输出结果如下:

    101 
    103 
    107 
    109 
    113 
    127 
    131 
    137 
    139 
    149 
    
    151 
    157 
    163 
    167 
    173 
    179 
    181 
    191 
    193 
    197 
    
    199 
    The total is 21

     

    展开全文
  • for循环输出素数探究【java】

    千次阅读 2017-08-21 21:50:38
    for循环输出素数探究。

    一、判断953是不是为素数(质数)。

    代码:

    /**
        判断953是不是为素数(质数)
        分析:
            素数指整数在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。
            假设953是素数,则:
            953 % 2 !== 0
            953 % 3 !== 0
            953 % 4 !== 0
            ……
            953 % 952 !== 0
            反推得出,只要953被2~952之间的任何一个整数整除,则953不是素数。
    
            除数从2开始到952按照整数依次递增,则用for循环表示为:
                for(int i=2;i<953;i++){
                    判断953能否被i整数
                        如果能被整除,则953不是素数,结束循环,跳出去输出“953不是素数”
                        如果不能被整除,则953是素数,结束循环,跳出去输出“953是素数”
                }
     */
     
     public class IsPrime
    {
        public static void main(String[] args){
    
            int num = 953;
            boolean isPrime = true;   // 标记数字num默认为素数
            for(int i=2;i<num;i++) {
                if(num%i==0) {        // num能够被2~num-1之间的自然数整数
                    isPrime = false;  // 标记数字num为非素数
                    break;            // 结束循环
                }
            }
    
            System.out.println(isPrime?num+"是素数":num+"不是素数");    
    
        }
    }

    代码结果显示:

     

    二、列出1~100之间的所有素数

    代码:

    /**
        列出1~100之间的所有素数
        分析:
            上面代码片段表示判断num为953的自然数是不是素数,
            假设num为937,则判断937是不是素数,
            假设num为933,则判断933是不是素数,
    
            因此将num设置为一个变量,利用for循环进行从1~100进行递增,
            将上门的代码片段放入该for循环中,判断为素数就打印出来。
    
            for(int num=2;num<=100;num++) {
    
                判断num是不是素数的代码片段
    
            }
    
    */
    
    public class IsPrime
    {
        public static void main(String[] args){
    
            for(int num=2;num<=100;num++) {
                boolean isPrime = true; // 标记数字num默认为素数
                for(int i=2;i<num;i++) {
                    if(num%i==0) {
                        isPrime = false;
                        break;
                    }
                }
                if(isPrime) {
                    System.out.print(num+" ");
                }
            }
        }
    }
    代码解释说明:

    代码结果显示:

     

    三、列出1~100之间的所有素数,并每行显示5个数。

    代码:

    /**
        列出1~100之间的所有素数,并每行显示5个数。
        分析:
            从上例代码中可以得到1~100之间的所有素数。
            要想每行显示5个数,就是要知道每次素数得出的时候,知道它是第几个出现的,然后进行累加
            当累加数字到5时,就换行。
    
            因此需要用一个标记来记录每次素数输出的次数。
    
    */
    
    public class IsPrime
    {
        public static void main(String[] args){
            
            int count = 0; // 计数器,用来在每次素数打印时,记录次数。
            for(int num=2;num<=100;num++) {
                boolean isPrime = true; // 标记数字num默认为素数
                for(int i=2;i<num;i++) {
                    if(num%i==0) {
                        isPrime = false;
                        break;
                    }
                }
                if(isPrime) {
                    System.out.print(num+" ");
                    count++; // 每打印一个素数就记录一次
                    if(count%5==0) { // 每计数器累计记录5次,就换行一次。
                        System.out.println();
                    }
                }
            }
        }
    }


    代码变形:计数器如果实现每5次累计之后,就置零也可以达到相应的计数效果。 将上述25行~31行代码进行置换以下代码,即可:

    if(isPrime) {
      System.out.print(num+" ");
      count++; // 每打印一个素数就记录一次
      if(count==5) { // 计数器累计到数字5时,就换行一次
         System.out.println();
         count = 0; // 计数器进行置零
        }
    }

    代码结果显示:

    四、输出9*9乘法表

    代码:

    /**
        输出显示9*9乘法表
        1*1=1
        1*2=2 2*2=2
        1*3=3 2*3=6 3*3=9
        1*4=4 2*4=8 3*4=12 4*4=16
        ……
        1*9=9 2*9=18 ……        ……       9*9=81
    
        分析:按照每行和每列进行规律分析
            - 表格共9行,
            - 每第几个行输出需要共几个等式
    
            恒等式格式为 i*j=c
                · 每行i从1开始递增到j,表示为每第j行输出可以输出共i个等式
                    因此使用for循环表示为:
                    for(int i=1;i<=j;j++) {
                        ……
                    }
                · 表示第j行
                    for(int j=1;i<=9;j++) {
                        输出一行  //该循环体执行一次,就换行一次。
                    }
            因此第一个for循环体需要在第二个for循环体之内。
    */
    
    public class Test03
    {
        public static void main(String[] args) {
            for(int j=1;j<=9;j++) {
                for(int i=1;i<=j;i++){
                    System.out.print(i+"*"+j+"="+i*j+" "); // i从1~j循环显示,第j行需要显示1~j个恒等式
                }
                System.out.println();    // 每上面的i循环体执行一次结束,即该行显示完毕,就换行一次
            }
        }
    }

    代码结果显示:


    展开全文
  • 统计1到1000之间有多少个素数,并输出素数。 ** 如何插入一段漂亮的代码片 去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片. @Test public void ningTest(){ //新建一个list集合用来...
  • 输出素数之和

    2020-10-17 14:15:03
    编写程序输出n以内最大的10个素数及其之和;如果n以内最大素数不足10个,则按照实际个数输出。 输入格式: 输入n的值。 输出格式: 在第一行中输出最大的10个素数,每个素数后面有个空格。在第二行中输出10个素数之和...
  • 输出素数并统计个数 (10分)

    千次阅读 2019-12-26 13:39:22
    6-24 输出素数并统计个数 (10分) 输入2个正整数m和n(m < n <= 500),输出[m, n]区间内所有的素数,并统计素数的个数。要求实现一个判断素数的简单函数prime§,当p为素数时返回1,否则返回0。素数就是只能被...
  • C++实现输出素数

    千次阅读 2019-07-19 14:32:33
    1000),请按照递增次序输出所有小于等于N的素数 //筛法(复杂度较小) #include<iostream> using namespace std; int main() { int n;cin>>n; bool p[n]; for(int i=2;i<=n...
  • 打印某个区间之间的素数,并输出素数的个数 #define use _CRT_SECURE_NO_WARNINGS 1 #include #include #include void Print_prime(int lower,int upper) { int i=0,j=0; int count=0; for(i=lower;i { for(j=2...
  • 用线程输出素数

    2016-11-02 18:11:41
    编写一个有两个线程的程序,第一个线程用来计算2~100000之间的素数的个数,第二个线程用来计算100000~200000之间的素数的个数,最后输出结果。 素数,只能被1和它本身整除
  • c程序:写一个判断素数函数,在主函数上面输入十个整数,输出素数个数信息! //思路:编写程序,其中自定义一函数,用来判断一个整数是否为素数,主函数输入一个数,输出是否为素数,反复调用这个函数,把正确的结果...
  • c语言编程题-输出素数

    千次阅读 2020-11-13 14:15:18
    题目:判断101-200之间有多少个素数,并输出所有素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,  则表明此数不是素数,反之是素数。 代码 #include <stdio.h> void ...
  • JAVA判断并输出素数

    2020-02-23 17:13:20
    输出100-200之间的所有素数。 @Test public void PrimeNumber() { int n=200; //第一个for控制100-200的每一个数 for (int i = 100; i <= n; i++) { //定义一个int变量,初始值为0; int flag=0; ...
  • 1、判断输入是否是素数或者对称素数。#include #include #include using namespace std; //isPrime 函数用来判断一个数是否是素数 bool isPrime(int); int main(int argc, char* argv[]) { int n; cin>>n;
  • 判断101-200之间有多少个素数,并输出所有素数
  • python 显示,输出素数

    千次阅读 2018-08-09 15:39:10
    写一个函数isprime(x)判断x是否是素数,如果是素数返回True否则返回False def isprime(x): if x &lt; 2: return False for i in range(2, x): if x % i == 0: return False return True pri...
  • 素数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数
  • C语言输出素数表(1-100)&前100个

    万次阅读 多人点赞 2018-01-11 18:55:36
    本来是想第二篇做双链表的,今天看C和指针第四章,复习了以下之前做的素数输出,三种不同方法,结果如下: 1.输出1-100以内的素数: //这个比较简单,不多做介绍,唯一注意的一点是for循环截止条件是i(n),因为...
  • python实现算法:输出素数

    千次阅读 2019-01-04 21:24:13
    代码部分:prime.py //时间复杂度为O(n) def is_prime(num): if num&lt;=1: return False for i in range(2,num): ...//arr为列表类型,求出1-100之间的素数 def find_prime(arr): for i in ...
  • 1.for循环输出100以内的素数 def get_prime_scope(scope=100): numlist = [] i = 2 for i in range(2, scope + 1): j = 2 for j in range(2, int(math.sqrt(i))): if (i % j == 0): ...
  • /*思路:1使用ArrayList代替普通的数组可以扩容 2.在第二个循环中,若j能除开比...之后输出就行了*/package TestJava; import java.util.ArrayList; import java.util.List; public class PrimeNumber { public stati
  • 素数:除了1和它本身不再有其它的因数的大于1的自然数。 素数判断函数:  int Prime_judge(int x)  { int i; if(x==0||x==1) return 0; for(i=2;i if(x%i==0) return 0;//不是素数  else if(x%i!=0&&(i==sqrt(x)...
  • j++)/*判断素数*/ { for (int i = 2; i [j]; i++) { y *= data[j] % i; } if (y != 0) { primes = &data[j]; len++; primes++; } } /*for (int i = 0; i ; i++) printf...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 65,744
精华内容 26,297
关键字:

输出素数