为了账号安全,请及时绑定邮箱和手机立即绑定

求素数 请教大神们 来帮忙

求素数 请教大神们 来帮忙

C
慕粉3277717 2016-05-01 15:44:31
#include <iostream>#include <stdio.h>#include <math.h>using namespace std;int main(){    int P ,S,N,i,a,b;    for(i=1;i<=19;i++)    {        N=2*pow(2,i);        printf("%d\n",N);        for(a=2;a<=2*pow(2,i);a++)        {            if(a==2*pow(2,i))            {              for(b=2;b<a;b++)              {                  if(a%b!=0&&a==b)                  printf("%d",a);              }            }        }    }    return 0;}为什么这个输不出来素数那列 要怎么弄 我要弄成右边那个样子 ( 第一排为 个数(从2开始)第二排为素数 第三个是为不是素数的数量) 并且向右对齐 三排之间最好有先划分。。 谢谢 急用
查看完整描述

5 回答

已采纳
?
cancan520520

TA贡献3条经验 获得超2个赞

不懂你问的问题啊,希望说的清楚一些,你要输出什么

查看完整回答
反对 回复 2016-05-01
  • 慕粉3277717
    慕粉3277717
    你好 我的方程是 第一列 4 2 1 4表示数字2-4(并且N=2^i i范围为2 到20 . 所以2^2=4) 2表示在2 3 4 中的数字里有2 3 是素数所以数量为2 1 表示在2 3 4 中 4 不是素数 所以数量为1 以此类推。
?
jfhdibrbfjd

TA贡献163条经验 获得超40个赞


#include<stdio.h>
int isp(int n)
{
    int i;
    for(i=2;i<n;i++)
    {
        if(n%i==0)
        return 0;
    }
    return 1;
}
   void getpr(int low,int high)
{       int  i;
    for(i=low;i<=high;i++)
    {
        if(isp(i))
        {    if(i!=1)
            printf("%d ",i);
        }
    }
}
int main()
{
    int low,high;
    printf("给定数字的起始范围!\n");
    scanf("%d",&low);
    printf("给定结束范围!\n");
    scanf("%d",&high);
    getpr(low, high);
    printf("\n");
}


查看完整回答
反对 回复 2016-05-05
?
jfhdibrbfjd

TA贡献163条经验 获得超40个赞

#include<iostream>
#include<math.h>
using namespace  std;
int main()
{

    int i,j=2,ad=0,k=0;
    long int a[1000000];
    long double N;
    for(i=2;i<=pow(2,1);i++)
     {
	        
       {
		 for( j=2;j<i;j++)
           {
            if(i%j==0)
               break;
           }
        if(i==j)
           {
            ad++;
            a[k]=i;
            k++;
           }
        else
		   {
		   cout<<"没有的"<<endl;
		   }
	    
      }
      cout<<pow(2,1)<<ad<<i-1-ad<<endl;
    }return 0;
}


查看完整回答
反对 回复 2016-05-03
  • 慕粉3277717
    慕粉3277717
    怎么不对呢
  • jfhdibrbfjd
    jfhdibrbfjd
    这是运行不了的 我只是提供思路的
  • jfhdibrbfjd
    jfhdibrbfjd
    #include<stdio.h> int isp(int n) { int i; for(i=2;i<n;i++) { if(n%i==0) return 0; } return 1; } void getpr(int low,int high) { int i; for(i=low;i<=high;i++) { if(isp(i)) { if(i!=1) printf("%d ",i); } } } int main() { int low,high; printf("给定数字的起始范围!\n"); scanf("%d",&low); printf("给定结束范围!\n"); scanf("%d",&high); getpr(low, high); printf("\n"); }
?
jfhdibrbfjd

TA贡献163条经验 获得超40个赞

楼主啊    你的代码问题太多了  而且希望你能举个例子 

查看完整回答
反对 回复 2016-05-01
  • 慕粉3277717
    慕粉3277717
    你好 我的方程是 第一列 4 2 1 4表示数字2-4(并且N=2^i i范围为2 到20 . 所以2^2=4) 2表示在2 3 4 中的数字里有2 3 是素数所以数量为2 1 表示在2 3 4 中 4 不是素数 所以数量为1 以此类推。
  • jfhdibrbfjd
    jfhdibrbfjd
    你是说虫2^2~2^20里的数有没有素数呗
  • jfhdibrbfjd
    jfhdibrbfjd
    我自己写个行不
点击展开后面3
?
慕粉3277717

TA贡献1条经验 获得超0个赞

对了  第一排是 N=2^i i 范围在2到20

查看完整回答
反对 回复 2016-05-01
  • Jaster_scz
    Jaster_scz
    你这个 感觉写的好乱,你把 题目要求写清楚点 回复我
  • 5 回答
  • 0 关注
  • 1874 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信