⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 primnum.cpp

📁 找到1到2000的素数,并找出连续整数和为1898的个数
💻 CPP
字号:
#include<iostream.h>

void main()
{
	int i=0,num,j,flag,u;
	int a[1000];
	///////////////////////////////////////找出素数
	for(num=2;num<2000;num++)
	{
		j=2;flag=0;
		while(flag==0&&j<=num/2)
		{
			if(num%j==0)
			{
				flag=1;
				break;
			}
			else j++;
		}
		if(flag==0)
		{
			a[i]=num;
		    i++;
		} 
	}
	int numofPrim=i;
	int *b=new int[numofPrim];
	///////////////////////求它的差数
	for(j=0;j<numofPrim;j++)
		b[j]=a[j+1]-a[j];
	///////////////////////////////////输入出部分
	for(u=0;u<numofPrim;u++)
	{
		cout<<a[u]<<"   ";
		if(u%10==0&&u!=0)
			cout<<endl;
	}
	cout<<endl;
	int aaa=0;
	for(u=0;u<numofPrim-1;u++)
	{
		cout<<b[u]<<"  ";
		if(u%20==0&&u!=0)
			cout<<endl;
	}
	cout<<endl<<"素数的个数:"<<numofPrim<<endl;
 /////////////////////////////////////求出连续的数的和为1898
	int begin=0,last=0;
	int total=0;
	int count=0;
	while(last<numofPrim)
	{
		if(total<1898)
		{
			total+=b[last];
		    last++;
		}
        else if(total==1898)
		{
			count++;
            total-=b[begin];
			begin++;
		}
		else
		{
			total-=b[begin];
			begin++;
		}
	}
	cout<<"连续整数和为1898的个数有:"<<count<<endl;
	

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -