一,最大公约数
#include<iostream.h>
int lcm;
int fun(int m,int n,int gcd)
{
int x;
x=m%n;
while(x)
{
m=n;
n=x;
x=m%n;
}
lcm=gcd/n;
return n;
}
int main()
{
int m,n,gcd;
cout<<"请输入两个数:";
cin>>m>>n;
gcd=fun(m,n,m*n);
cout<<"最大公约数是"<<gcd<<endl;
cout<<"最小公倍数是"<<lcm<<endl;
二,素数排序
#include <iostream>
using namespace std;
void sort(int p[], int n);
bool prime(int x);
void print(int p[],int n);
int main( )
{ int a[10]={2,13,5,47,19,53,27,23,28,11};
int b[10],i,j=0;
for(i=0;i<10;i++)
{
if(prime(a[i])==true)
{
b[j]=a[i];
j++;
}
}
print(b,j);
sort(b,j);
print(b,j);
return 0;
}
bool prime(int x)
{
for(int i=2;i<x;i++)
{ if(x%i==0) break;}
if(i==x) return true;
else return false;
}
void sort(int p[], int n)
{
int s,t;
for(int i=0;i<n;i++)
{
for(t=0;t<n-1-i;t++)
{
if(p[t]>p[t+1])
{
s=p[t+1];
p[t+1]=p[t];
p[t]=s;
}
}
}
}
void print(int p[],int n)
{
for(int i=0;i<n;i++)
cout<<p[i]<<" ";
cout<<endl;
}