求高手帮我编个C++程序 感激不尽
题目:该程序设计四个函数:读函数ReadDat()随机产生n个四位数,把n个四位数存入数组a中,请编制一函数jsValue(),其功能是:求出所有这些四位数是素数的个数c...
题目: 该程序设计四个函数:读函数ReadDat()随机产生n个四位数,把n个四位数存入数组a中,请编制一函数jsValue(),其功能是:求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序,最后调用写函数writeDat()输出结果到屏幕或数据文件。在main()函数中调用以上函数。
展开
展开全部
#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
int cnt=0;
void ReadDat(int a[],int n)
{
int i=0,g;
srand(time(0));
while(i<n)
{
g=rand();
if(g>=1000&&g<=9999){a[i]=g;i++;}
}
}
void jsValue(int a[],int b[],int n)
{
int i,j,k,t;
for(i=0;i<n;i++)
{
for(k=2;k<a[i];k++)if(a[i]%k==0)break;
if(k==a[i]){b[cnt]=a[i];cnt++;}
}
for(i=0;i<cnt-1;i++)
for(j=i+1;j<cnt;j++)
if(b[i]>b[j])
{
t=b[i];
b[i]=b[j];
b[j]=t;
}
}
void writeDat(int a[],int b[],int n)
{
int i;
cout<<"产生的随机数为:";
for(i=0;i<n;i++)cout<<a[i]<<' ';
cout<<endl;
if(cnt==0)cout<<"没有素数";
else{
cout<<"其中素数个数为:"<<cnt<<endl<<"它们分别是:";
for(i=0;i<cnt;i++)cout<<b[i]<<' ';
}
cout<<endl;
}
int main()
{
int n,a[100],b[100];
cout<<"输入产生随机数的个数:";
cin>>n;
ReadDat(a,n);
jsValue(a,b,n);
writeDat(a,b,n);
return 0;
}
#include<cstdlib>
#include<ctime>
using namespace std;
int cnt=0;
void ReadDat(int a[],int n)
{
int i=0,g;
srand(time(0));
while(i<n)
{
g=rand();
if(g>=1000&&g<=9999){a[i]=g;i++;}
}
}
void jsValue(int a[],int b[],int n)
{
int i,j,k,t;
for(i=0;i<n;i++)
{
for(k=2;k<a[i];k++)if(a[i]%k==0)break;
if(k==a[i]){b[cnt]=a[i];cnt++;}
}
for(i=0;i<cnt-1;i++)
for(j=i+1;j<cnt;j++)
if(b[i]>b[j])
{
t=b[i];
b[i]=b[j];
b[j]=t;
}
}
void writeDat(int a[],int b[],int n)
{
int i;
cout<<"产生的随机数为:";
for(i=0;i<n;i++)cout<<a[i]<<' ';
cout<<endl;
if(cnt==0)cout<<"没有素数";
else{
cout<<"其中素数个数为:"<<cnt<<endl<<"它们分别是:";
for(i=0;i<cnt;i++)cout<<b[i]<<' ';
}
cout<<endl;
}
int main()
{
int n,a[100],b[100];
cout<<"输入产生随机数的个数:";
cin>>n;
ReadDat(a,n);
jsValue(a,b,n);
writeDat(a,b,n);
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询