您的位置:首页 > 编程语言 > C语言/C++

c++第七次作业

2016-06-05 17:05 337 查看
项目2:最大公约和和最小公倍数

#include <iostream>
using namespace std;
int temp;
void F1(int m,int n)
{
int t;
if(m<n)
{
F1(n,m);
}
else
{
while(n!=0)
{
t=m%n;
m=n;
n=t;
}
temp=m;
}
}
int F2(int m,int n)
{
int t;
t=(m*n)/temp;
return t;
}
int main(int argc,char*argv[])
{
int m,n;
cout<<"请输入两个数:"<<endl;
cin>>m>>n;
F1(m,n);
cout<<"最大公约数为:"<<temp<<endl;
cout<<"最小公倍数为:"<<F2(m,n)<<endl;
return 0;
}


项目1:素数和回文

#include<iostream>
using namespace std;
int F1(int n)
{
int i;
for(i=2;i<n;i++)
{
if(n%i==0)
break;
}
if(i==n)
return 1;
else
return 0;
}
int F2(int n)
{
int i,x,y,z;
y=n%10;
x=n/10%10;
z=n/100;
if(n<10) i=n;
else if(n<100) i=y*10+x;
else i=y*100+x*10+z;
if(i==n)
return 1;
else
return 0;
}
int F3(int n)
{
int i,x,y,z;
y=n%10;
x=n/10%10;
z=n/100;
if(n<10) i=n;
else if(n<100) i=y*10+x;
else i=y*100+x*10+z;
return i;
}
void main()
{
int n,i=0,j=0,p=0,q=0,k;
int a[300]={0},b[300]={0},c[300]={0},d[300]={0};
for(n=2;n<=300;n++)
{
if(F1(n)==1)
a[i++]=n;
if(F2(n)==1)
b[j++]=n;
if((F2(n)==1)&&(F1(n)==1))
c[p++]=n;
if((F1(F3(n))==1)&&(F1(n)==1))
d[q++]=n;
}
cout<<"300以内的所有素数为:";
for(k=0;k<i;k++)
cout<<a[k]<<" ";
cout<<endl;
cout<<"300以内的所有回文数为:";
for(k=0;k<j;k++)
cout<<b[k]<<" ";
cout<<endl;
cout<<"300以内的所有回文素数为:";
for(k=0;k<p;k++)
cout<<c[k]<<" ";
cout<<endl;
cout<<"300以内的所有可逆素数为:";
for(k=0;k<q;k++)
cout<<d[k]<<" ";
cout<<endl;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: