第11周项目2求最大公约数(2四数)

来源:互联网 发布:数据化运营速成手册 编辑:程序博客网 时间:2024/05/21 08:40
/**copyright (c)2014,烟台大学计算机学院 *All rights reserved *文件名称:qwe.cpp*作者:孙春红 *完成日期:2014年11月10号 *版本号:v1.0 *问题描述:通过函数,求四个数的最大公约数**/#include <iostream>using namespace std;int gcd (int ,int );int gcds (int,int,int,int);int main(){    int a,b,c,d;cin>>a>>b>>c>>d;cout<<"最大公约数是: "<<gcds(a,b,c,d)<<endl;return 0;}int gcd(int x,int y){    int r;    while (y>0)    {        r=x%y;        x=y;        y=r;    }    return (x);}int gcds (int p,int q,int x,int y){   int g,g1,g2;   g1=gcd (x,y);   g2=gcd (p,q);   g=gcd(g1,g2);    return (g);}


运行结果:

知识点总结:

学会使用函数求四个数的最大公约数。

学习心得:

了解了在多个函数之间的联系,就如下面的运行界面,声明了三个函数 int main, int gcd,int gcds。开始时,只是想通过求两个数的最大公约数的形式再求四个数的,可是无法运行而且好长一串的代码,并没有正确的理解老师上课所讲的函数的调用,以及形式函数等知识。

例如下面函数代码:

在13行的int x ,int y,只是一个形式参数,并没有确切的值,int gcd 只是提供一个运行公式,在输入四个数的时候,运行完输入的前两个数,得到g1,然后return(x),继续运行下两个数p、q,再看int gcds 函数第27、28行,第28行的p和q仍如x、y一样,通过调用int gcd 函数继续运行p、q,最后分别求g1、g2,再求出g1、g2的最大的公约数g,最后return(g)回到第十行,输出最后结果。

0 0
原创粉丝点击