通过计算的判断究竟在范围内有多少个质数的问题,怎么使用C语言的程序的编写的技术实现?

Problem Description
Easy question! Calculate how many primes between [1...n]!

Input
Each line contain one integer n(1 <= n <= 1e11).Process to end of file.

Output
For each case, output the number of primes in interval [1...n]

Sample Input
2
3
10

Sample Output
1
2
4

1个回答

// 注意包含的头文件应该是用尖括号,这里只是为让其能显示
#include "stdio.h"
#include "vector"
using namespace std;

int main()
{
vector v;
unsigned long n;
bool PrimeNumber; // 素数标记
unsigned long numPrime; // 素数个数
FILE * fp;

fp = fopen("in.txt","r");   // 打开输入文件

fscanf(fp,"%d",&n);         // 读取数据并将数据保存到vector容器中
while(!feof(fp))
{
    v.push_back(n);
    fscanf(fp,"%d",&n);
}
fclose(fp);                 // 关闭输入文件

fp = fopen("out.txt","w");  // 打开输出文件
for(long i = 0;i<v.size();i++)
{
    fprintf(fp,"0至%d的素数:",v[i]);
    numPrime = 0;
    for (long j = 2; j <= v[i]; j++)
    {
        PrimeNumber = true;
        for (long k = 2;k<j;k++)
        {
            if(j%k==0)
            {
                PrimeNumber = false;
                break;
            }
        }
        if(PrimeNumber)
        {
            numPrime++;
            fprintf(fp,"%d,",j);
        }
    }
    fprintf(fp,"\r素数个数为:%d\r\r",numPrime);
}
fclose(fp);

v.clear();
return 0;

}

输入文件:
2
3
10
72
83
59
输出文件:
0至2的素数:2,
素数个数为:1

0至3的素数:2,3,
素数个数为:2

0至10的素数:2,3,5,7,
素数个数为:4

0至72的素数:2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,
素数个数为:20

0至83的素数:2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,
素数个数为:23

0至59的素数:2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,
素数个数为:17

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
素数判定 计算问题
Problem Description 对于表达式n^2+n+41,当n在(x,y)范围内取整数值时(包括x,y)(-39<=x<y<=50),判定该表达式的值是否都为素数。 Input 输入数据有多组,每组占一行,由两个整数x,y组成,当x=0,y=0时,表示输入结束,该行不做处理。 Output 对于每个给定范围内的取值,如果表达式的值都为素数,则输出"OK",否则请输出“Sorry”,每组输出占一行。 Sample Input 0 1 0 0 Sample Output OK
判断101-200之间有多少个素数,并输出所有素数。 没有输出
for (int i = 101; i <=200; i++) { for (int j = 2; j < j/2; j++) { if (i % j == 0) { System.out.println(i + "是素数"); } } } 这个怎么没有输出呢,我的代码应该没问题吧
计算1-x内的素数, 使用y个线程计算
计算1-x内的素数, 结果保存在mysql中 要求: 1. 使用y个线程计算 2. 尽量优化算法 3. x和y可配置 我是用的mvc写的 下面是线程池和素数计算方式 写到这里写不下去了,求帮助 package com.lsszss; import com.lsszss.service.Impl.PrimeImpl; import com.lsszss.service.PrimeService; import java.util.ArrayList; import java.util.List; import java.util.concurrent.*; /** * @ClassName Threads * @Author 25788 * @Date 2019/12/20 11:52 * @Version V1.0 * java.util.concurrent.Executors :线程池的工厂类,用来生成线程池 * 01.使用线程池的工厂类Executros里边提供的静态方法newFixedThreadPool生产一个指定线程数量的线程池 * 02.创建一个类,实现Runnable接口,重写run方法,设置线程任务 * 03.调用ExecutorService中的方法submit,传递线程任务(实现类),开启线程,执行run方法 * 04.调用ExecutorService中的方法shutdown销毁线程池(不建议使用) */ public class prime { static PrimeService primeService= new PrimeImpl(); private static List<Integer> getPrimeNumber(int num){ List<Integer> arrayList = new ArrayList<>(); for (int i = 1;i < num+1 ; i++){ if (isPrime(i)){ arrayList.add(i); primeService.addPrime(Long.parseLong(i+"")); } } return arrayList; } public static boolean isPrime(int n){ if (n==2||n==3){ return true; } if (n%2==0){ // 是偶数就一定不是素数 return false; } for (int i=3;i<=(int)Math.sqrt(n);i=i+2){ // 奇数+1为偶数,所以每次循环+2 if (n%i==0) {return false;} } return true; } public static void main(String[] args) { int x=100; //1 - x 之间的素数 int y=2; //线程数 System.out.println(getPrimeNumber(x)); // 01.使用线程池的工厂类Executros里边提供的静态方法newFixedThreadPool生产一个指定线程数量的线程池 ExecutorService executor = Executors.newFixedThreadPool(y); // 03.调用ExecutorService中的方法submit,传递线程任务(实现类),开启线程,执行run方法 executor.submit(new PrimeThread()); executor.submit(new PrimeThread()); executor.submit(new PrimeThread()); executor.submit(new PrimeThread()); executor.submit(new PrimeThread()); } }
判断一个数是不是素数
判断一个数n是不是素数,需要判断2—(n-1),为什么只需要判断2—sqrt(n)呢?
Java语言程序编写,计算1000以内所有质数的和,怎么计算
Java语言程序编写,计算1000以内所有质数的和,怎么计算?提示2也是质数。
C\C++中如何判断一个极大的数是否是素数?
急求大神,最好有代码,如何判断一个极大的数是否是素数?一般怎么存储大数?
判断一个数是质数的优化算法
判断1000 000 00内的一个数是否是素数,比较优化一点的,i从2到sqrt(i)循环判断,效率不行,希望大神指点。
素数判定的计算算法怎么写
Problem Description 对于表达式n^2+n+41,当n在(x,y)范围内取整数值时(包括x,y)(-39<=x<y<=50),判定该表达式的值是否都为素数。 Input 输入数据有多组,每组占一行,由两个整数x,y组成,当x=0,y=0时,表示输入结束,该行不做处理。 Output 对于每个给定范围内的取值,如果表达式的值都为素数,则输出"OK",否则请输出“Sorry”,每组输出占一行。 Sample Input 0 1 0 0 Sample Output OK
定一个整数类,它有一个特性,那就是他的值。他有两个行为判断自己是不是偶数,判断自己是不是质数
它有一个特性,那就是他的值。他有两个行为判断自己是不是偶数,判断自己是不是质数
Java计算100以内的素数,怎么用循环语句来实现的呢?
Java计算100以内的素数,怎么用循环语句来实现的呢? 有没有具体的程序作为参考
java基础,while方法,使用循环的方式编译出一定范围内的所有素数
使用for if等语句编译出一定范围内所有的素数,求大神指教
c++中素数的判断???
判断一个数是否为素数? 判断一个数是否为素数? 判断一个球是否为素数?
一个跟素数有关的问题
/*我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推。 现在,给定两个整数n和m,0<n<=m<=200,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。 输入格式: 两个整数,第一个表示n,第二个表示m。 输出格式: 一个整数,表示第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。 输入样例: 2 4 输出样例: 15*/ #include<stdio.h> int main() { int m,n,sum=0;//m,n让用户输入,sum即素数之和 scanf("%d%d",&n,&m); if(n==1)//从第一个素数开始算时要把第一个素数为2的特殊情况考虑进去 sum=sum+2; int flag=0,count=1;//flag为一个标识变量,count为素数计数器 while(count<=m) { int i=2; for(i=2;;i++) { flag=1; int j=2; for(j=2;j<i;j++) { if(i%j==0)//判断是否为素数 {flag=0; break;} } } if(flag!=0) { if(count>=n)//当素数个数大于n时才相加 { sum=sum+i; count=count+1; } } } printf("%d\n",sum); return 0; } 我想问一下为什么出错了,原因是什么?
C语言计算1000以内的质数的和,并且输出出来,代码
C 语言计算1000以内的质数的和,并且输出出来,代码怎么来写
判断素数的时间复杂度最小的算法
在10的7次方内的数判断是否素数,什么算法时间复杂度最小?求详解。。希望各位大神说的浅显一点,本人菜鸟~
判断一个数是不是素数的方法
用比这个数字小的所有素数去整除它就可以知道这个数是不是素数.这是为什么
javascrrpt怎么计算100以内所有素数的值,用log打印输出
javascrrpt怎么计算100以内所有素数的值,用log打印输出javascrrpt怎么计算100以内所有素数的值,用log打印输出
反素数 的问题如何解决
Problem Description 反素数就是满足对于任意i(0<i<x),都有g(i)<g(x),(g(x)是x的因子个数),则x为一个反素数。现在给你一个整数区间[a,b],请你求出该区间的x使g(x)最大。 Input 第一行输入n,接下来n行测试数据 输入包括a,b, 1<=a<=b<=5000,表示闭区间[a,b]. Output 输出为一个整数,为该区间因子最多的数.如果满足条件有多个,则输出其中最小的数. Sample Input 3 2 3 1 10 47 359 Sample Output 2 6 240
用C语言实现一个计算100以内质数的程序,要求使用递归实现
用C语言实现一个计算100以内质数的程序,要求使用递归实现
130 个相见恨晚的超实用网站,一次性分享出来
相见恨晚的超实用网站 持续更新中。。。
我花了一夜用数据结构给女朋友写个H5走迷宫游戏
起因 又到深夜了,我按照以往在csdn和公众号写着数据结构!这占用了我大量的时间!我的超越妹妹严重缺乏陪伴而 怨气满满! 而女朋友时常埋怨,认为数据结构这么抽象难懂的东西没啥作用,常会问道:天天写这玩意,有啥作用。而我答道:能干事情多了,比如写个迷宫小游戏啥的! 当我码完字准备睡觉时:写不好别睡觉! 分析 如果用数据结构与算法造出东西来呢? ...
字节跳动视频编解码面经
三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时想着能进去就不错了,管他哪个岗呢,就同意了面试...
win10系统安装教程(U盘PE+UEFI安装)
一、准备工作 u盘,电脑一台,win10原版镜像(msdn官网) 二、下载wepe工具箱 极力推荐微pe(微pe官方下载) 下载64位的win10 pe,使用工具箱制作启动U盘打开软件, 选择安装到U盘(按照操作无需更改) 三、重启进入pe系统 1、关机后,将U盘插入电脑 2、按下电源后,按住F12进入启动项选择(技嘉主板是F12) 选择需要启...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、PDF搜索网站推荐 对于大部
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
此博客仅为我业余记录文章所用,发布到此,仅供网友阅读参考,如有侵权,请通知我,我会删掉。 补充 有不少读者留言说本文章没有用,因为天气预报直接打开手机就可以收到了,为何要多此一举发送到邮箱呢!!!那我在这里只能说:因为你没用,所以你没用!!! 这里主要介绍的是思路,不是天气预报!不是天气预报!!不是天气预报!!!天气预报只是用于举例。请各位不要再刚了!!! 下面是我会用到的两个场景: 每日下
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
Linux(服务器编程):15---两种高效的事件处理模式(reactor模式、proactor模式)
前言 同步I/O模型通常用于实现Reactor模式 异步I/O模型则用于实现Proactor模式 最后我们会使用同步I/O方式模拟出Proactor模式 一、Reactor模式 Reactor模式特点 它要求主线程(I/O处理单元)只负责监听文件描述符上是否有事件发生,有的话就立即将时间通知工作线程(逻辑单元)。除此之外,主线程不做任何其他实质性的工作 读写数据,接受新的连接,以及处...
HAL 硬件抽象层介绍
和你一起终身学习,这里是程序员Android本篇文章主要介绍Android开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:和你一起终身学习,这里是程序员 Android本篇文章主要介绍Android开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:一、HAL 概述一、HAL 概述HAL定义了供硬件供应商实施的标准接口,该接口使Android无需考虑底层驱动程序的实现。使用HA...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
      11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1
8年经验面试官详解 Java 面试秘诀
    作者 | 胡书敏 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 本人目前在一家知名外企担任架构师,而且最近八年来,在多家外企和互联网公司担任Java技术面试官,前后累计面试了有两三百位候选人。在本文里,就将结合本人的面试经验,针对Java初学者、Java初级开发和Java开发,给出若干准备简历和准备面试的建议。   Java程序员准备和投递简历的实
知乎高赞:中国有什么拿得出手的开源软件产品?(整理自本人原创回答)
知乎高赞:中国有什么拿得出手的开源软件产品? 在知乎上,有个问题问“中国有什么拿得出手的开源软件产品(在 GitHub 等社区受欢迎度较好的)?” 事实上,还不少呢~ 本人于2019.7.6进行了较为全面的 回答 - Bravo Yeung,获得该问题下回答中得最高赞(236赞和1枚专业勋章),对这些受欢迎的 Github 开源项目分类整理如下: 分布式计算、云平台相关工具类 1.SkyWalk
致 Python 初学者们!
作者 | 许向武 责编 | 屠敏 出品 | CSDN 博客 前言 在 Python 进阶的过程中,相信很多同学应该大致上学习了很多 Python 的基础知识,也正在努力成长。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 Python 这门编程语言,从2009年开始单一使用 Python 应对所有的开发工作,直至今
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观...
使用 Angular 打造微前端架构的 ToB 企业级应用
这篇文章其实已经准备了11个月了,因为虽然我们年初就开始使用 Angular 的微前端架构,但是产品一直没有正式发布,无法通过生产环境实践验证可行性,11月16日我们的产品正式灰度发布,所以是时候分享一下我们在使用 Angular 微前端这条路上的心得(踩过的坑)了额,希望和 Angular 社区一起成长一起进步,如果你对微前端有一定的了解并且已经在项目中尝试了可以忽略前面的章节。 什么是微前...
大学四年因为知道了这32个网站,我成了别人眼中的大神!
依稀记得,毕业那天,我们导员发给我毕业证的时候对我说“你可是咱们系的风云人物啊”,哎呀,别提当时多开心啦????,嗯,我们导员是所有导员中最帅的一个,真的???? 不过,导员说的是实话,很多人都叫我大神的,为啥,因为我知道这32个网站啊,你说强不强????,这次是绝对的干货,看好啦,走起来! PS:每个网站都是学计算机混互联网必须知道的,真的牛杯,我就不过多介绍了,大家自行探索,觉得没用的,尽管留言吐槽吧???? 社...
拿下微软、Google、Adobe,印度为何盛产科技圈 CEO?
作者 | 胡巍巍 出品 | CSDN(ID:CSDNnews) 世界500强中,30%的掌舵人,都是印度人。 是的,你没看错。这是近日《哈佛商业评论》的研究结果。 其中又以微软CEO萨提亚·纳德拉(Satya Nadella)、和谷歌CEO桑达尔·皮查伊(Sundar Pichai,以下简称劈柴)最为出名。 微软CEO萨提亚·纳德拉(Satya Nadella) 其他著名印度...
Linux(内核剖析):19---中断总体概述
一、为什么要引入中断? 任何操作系统内核的核心任务,都包含有对连接到计算机上的硬件设备进行有效管理,如硬盘、蓝光碟机、键盘、鼠标、3D 处理器,以及无线电等。而想要管理这些设备,首先要能和它们互通音信才行。众所周知,处理器的速度跟外围硬件设备的速度往往不在一个数量级上,因此,如果内核采取让处理器向硬件发出一个请求,然后专门等待回应的办法,显然差强人意。既然硬件的响应这么慢,那么内核就应该在此期间...
程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca...
深度学习笔记------卷积神经网络
深度学习笔记------卷积神经网络
一文带你入门Linux
文章目录1.1 Linux的概述:1.1.1 什么是Linux:1.1.1.1 学习Linux之前先了解Unix1.1.1.2 Linux的概述:1.1.1.3 Linux的历史:1.1.1.4 Linux系统的应用:1.1.1.5 Linux的版本1.1.1.6 Linux的主流版本1.2 Linux的安装:1.2.1 虚拟机安装:1.2.1.1 什么是虚拟机1.2.1.2 安装VmWare1....
普通三本毕业,我怎么一路艰辛进入阿里的
英雄不问出处? 自古以来就有这样一句话,真的英雄不问出处吗?这句话太挫了。普通三本院校的我,大四的时候居然都不知道什么是校招,所以出处太重要了。这也是没有机会参加阿里校招的原因,毕竟校招门槛比社招还是要低的,最重要的是校招进入阿里能让你的起点比别人更高。 有幸可以社招进入阿里,了解了校招的思路,赶紧介绍给学弟们,现在我们三本院校的小学弟今年居然有 3 个人通过了阿里的校招。下面我也把这份宝贵的经...
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东...
破14亿,Python分析我国存在哪些人口危机!
一、背景 二、爬取数据 三、数据分析 1、总人口 2、男女人口比例 3、人口城镇化 4、人口增长率 5、人口老化(抚养比) 6、各省人口 7、世界人口 四、遇到的问题 遇到的问题 1、数据分页,需要获取从1949-2018年数据,观察到有近20年参数:LAST20,由此推测获取近70年的参数可设置为:LAST70 2、2019年数据没有放上去,可以手动添加上去 3、将数据进行 行列转换 4、列名...
强烈推荐10本程序员在家读的书
很遗憾,这个春节注定是刻骨铭心的,新型冠状病毒让每个人的神经都是紧绷的。那些处在武汉的白衣天使们,尤其值得我们的尊敬。而我们这些窝在家里的程序员,能不外出就不外出,就是对社会做出的最大的贡献。 有些读者私下问我,窝了几天,有点颓丧,能否推荐几本书在家里看看。我花了一天的时间,挑选了 10 本我最喜欢的书,你可以挑选感兴趣的来读一读。读书不仅可以平复恐惧的压力,还可以对未来充满希望,毕竟苦难终将会...
Python实战:抓肺炎疫情实时数据,画2019-nCoV疫情地图
今天,群里白垩老师问如何用python画武汉肺炎疫情地图。白垩老师是研究海洋生态与地球生物的学者,国家重点实验室成员,于不惑之年学习python,实为我等学习楷模。先前我并没有关注武汉肺炎的具体数据,也没有画过类似的数据分布图。于是就拿了两个小时,专门研究了一下,遂成此文。
疫情数据接口api
返回json示例 { "errcode":0,//0标识接口正常 "data":{ "date":"2020-01-30 07:47:23",//实时更新时间 "diagnosed":7736,//确诊人数 "suspect":12167,//疑是病例人数 "death":170,//死亡人数 "cur...
智力题(程序员面试经典)
NO.1  有20瓶药丸,其中19瓶装有1克/粒的药丸,余下一瓶装有1.1克/粒的药丸。给你一台称重精准的天平,怎么找出比较重的那瓶药丸?天平只能用一次。 解法 有时候,严格的限制条件有可能反倒是解题的线索。在这个问题中,限制条件是天平只能用一次。 因为天平只能用一次,我们也得以知道一个有趣的事实:一次必须同时称很多药丸,其实更准确地说,是必须从19瓶拿出药丸进行称重。否则,如果跳过两瓶或更多瓶药...
疫情防控,开发者集结出战!
作者 | 屠敏出品 | CSDN(ID:CSDNnews)2020 年伊始,病毒肆虐,人心惶惶。截止北京时间 1 月 31 日 15 时 30 分,全国确诊新型冠状病毒肺炎的数字已达到了...
相关热词 c# 为空 判断 委托 c#记事本颜色 c# 系统默认声音 js中调用c#方法参数 c#引入dll文件报错 c#根据名称实例化 c#从邮件服务器获取邮件 c# 保存文件夹 c#代码打包引用 c# 压缩效率
立即提问