C++求四个正整数最大公约数的方法

本文实例讲述了C++求四个正整数最大公约数的方法。分享给大家供大家参考,具体如下:

/*
* 作 者: 刘同宾
* 完成日期:2012 年 11 月 16 日
* 版 本 号:v1.0
*
* 输入描述: 输入四个正整数,输出其最大公约数。
* 问题描述:
* 程序输出:
* 问题分析:略
* 算法设计:略
*/
#include<iostream>
using namespace std;
int f(int,int);
int g(int,int,int,int);
int main()
{
  int a,b,c,d;
  cout<<"请输入四个正整数:"<<endl;
  cin>>a>>b>>c>>d;
  cout<<"最大公约数为:"<<g(a,b,c,d)<<endl;
  return 0;
}
int f(int a,int b)
{
  int m;
  while(b>0)
  {
    m=a%b;
    a=b;
    b=m;
  }
  return a;
}
int g(int a,int b,int c,int d)
{
  int i,j,k;
  i=f(a,b);
  j=f(c,d);
  k=f(i,j);
  return k;
}

运行效果如下图所示:

希望本文所述对大家C++程序设计有所帮助。

(0)

相关推荐

  • C++初学者之根据输入的任何一个正整数,输出可能被表示的连续正整数

    题目描述:一个正整数有可能可以被表示为 n(>=2) 个连续正整数之和,如: 15=1+2+3+4+5 15=4+5+6 15=7+8 请编写程序,根据输入的任何一个正整数,找出符合这种要求的所有连续正整数序列. 输入数据:一个正整数,以命令行参数的形式提供给程序. 输出数据:在标准输出上打印出符合题目描述的全部正整数序列,每行一个序列,每个序列都从该序列的最小正整数开始.以从小到大的顺序打印.如果结果有多个序列,按各序列的最小正整数的大小从小到大打印各序列.此外,序列不允许重复,序列内的整数用

  • JS只能输入正整数的简单实例

    如下所示: <html> <head> <title>只能输入正整数</title> </head> <body> 兑换数量:<input type="text" ID="txtNumber" Width="50px" onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]

  • JavaScript正则表达式校验非正整数实例

    话不多说,跟小编一起来看看吧 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></t

  • JavaScript正则表达式校验非零的正整数实例

    话不多说,请看实例代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></titl

  • 只能输入小于最大数且是正整数的脚本

    最大数: 98765 具体功能自己测试咯 :) /* 只允许输入数字 */ function numInputCheck(o,m){ var d; if(',48,49,50,51,52,53,54,55,56,57,96,97,98,99,100,101,102,103,104,105,8,9,13,'.indexOf(',' + event.keyCode + ',')==-1){ event.returnValue=null; } if(m!=null){ d = event.keyCod

  • 正则文本框只能输入正整数

    正则实现文本框只能输入正整数 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

  • 一种求正整数幂的高效算法详解

    核心思想是当n为偶数时,a^n = a^n/2 × a^n/2当n为奇数时,a^n = a^(n-1)/2 × a^(n-1)/2  × a代码如下: 复制代码 代码如下: public class Power { public static void main(String[] args) {  System.out.println(power(5.5,5)); } private static double power(double base, int exponent) {  if (ex

  • jquery 正整数数字校验正则表达式

    限制用户输入的内容可以有如下做法: $("#id").keyup(fucntion(){//当键盘按下之后立即校验,并替换当前操作框中的内容 var value = $(this).val(); $(this).val(value.replace(reg,replace_data)); }); 最常见的就是限制用户只能录入数字 var reg = new RegExp("[^0-9]","g");  [^0-9]表示非0-9之间的数字,g表示全局

  • JQuery判断正整数整理小结

    var totalPage = document.getElementById("totalPage").value.trim();//获取总页 var reg=/^[1-9]\d*$/; //由 1-9开头 的正则表达式 //先判断是否为整数 在判断 是否在 1-总页 整数范围之内 if(reg.test(searchBox)){ if(parseInt(searchBox) > 0 && parseInt(searchBox) <= totalPage)

  • js判断输入是否为正整数、浮点数等数字的函数代码

    1.下面列出了一些判读数值类型的正则表达式 复制代码 代码如下: /^\d+$/ //非负整数(正整数 + 0) /^[0-9]*[1-9][0-9]*$/ //正整数 /^((-\d+)|(0+))$/ //非正整数(负整数 + 0) /^-[0-9]*[1-9][0-9]*$/ //负整数 /^-?\d+$/ //整数 /^\d+(\.\d+)?$/ //非负浮点数(正浮点数 + 0) /^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0

  • 使用JavaScript判断用户输入的是否为正整数(两种方法)

    在项目开发中,需要使用JavaScript验证用户输入的是否为正整数. 方法一: var type="^[0-9]*[1-9][0-9]*$"; var r=new RegExp(type); var flag=r.test(subjectHour.value); if(!flag){ alert("课时应为正整数"); subjectHour.focus(); return false; } 方法二: var type="^[0-9]*[1-9][0-9

随机推荐