PHP编程求最大公约数与最小公倍数的方法示例

yizhihongxing

PHP编程求最大公约数与最小公倍数的方法示例

最大公约数

方法一:辗转相除法

辗转相除法,也叫欧几里得算法,是一种快速求两个正整数最大公约数的方法。其基本思想是用较大数除以较小数,再用出现的余数去除除数,不断重复这个过程,直到余数为零为止,此时的除数即为两个数的最大公约数。

示例代码:

function gcd($a, $b)
{
    if ($b == 0) {
        return $a;
    } else {
        return gcd($b, $a % $b);
    }
}

echo gcd(30, 42);  // 输出6

方法二:更相减损法

更相减损法是用来求两个正整数的最大公约数的另一种方法。其基本思想是不断用两数中较大数减去较小数,然后将所得的差与较小数比较,如果相等,则当前较小数即为最大公约数,否则继续执行减操作,直到两个数相等时结束。

示例代码:

function gcd2($a, $b)
{
    while ($a != $b) {
        if ($a > $b) {
            $a -= $b;
        } else {
            $b -= $a;
        }
    }
    return $a;
}

echo gcd2(30, 42);  // 输出6

最小公倍数

方法一:利用最大公约数求解

求两个正整数的最小公倍数,可以通过它们的最大公约数来求解。最小公倍数等于两数之积除以最大公约数。

示例代码:

function lcm($a, $b)
{
    $gcd = gcd($a, $b);
    return $a * $b / $gcd;
}

echo lcm(30, 42);  // 输出210

方法二:穷举法

方法二是一种效率较低的求解方法,它的基本思想是从两数的较大值开始想要得到的最小公倍数是学生概率和两个数的积。

示例代码:

function lcm2($a, $b)
{
    $max = max($a, $b);
    while (true) {
        if ($max % $a == 0 && $max % $b == 0) {
            return $max;
        }
        $max++;
    }
}

echo lcm2(30, 42);  // 输出210

以上是求解最大公约数和最小公倍数的两种方法以及相应的示例代码。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PHP编程求最大公约数与最小公倍数的方法示例 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • PHP中用hash实现的数组

    使用hash实现的数组,也被称为关联数组、字典或映射,是一种常用的数据结构,允许我们可以通过一个独特的键(字符串或整数等)来存储和查找值。在PHP中,我们可以使用内置的hash表来构建一个关联数组。下面是完整的攻略: 1. 创建一个关联数组 在PHP中,我们可以使用array()或[]来创建一个关联数组。下面的例子分别展示了这两种方法: // 使用array…

    PHP 2023年5月26日
    00
  • Windows搭建本地PHP8环境,配Nginx

    一、安装PHP   下载:https://windows.php.net/download 我下载的是此时的最新版8.2.3   下载后 解压目录 放到C:/tool下面目录重命名为PHP  目录自己定  我这个tool目录是个人习惯  你可以放到主流的C:\Program Files下也可以放到D盘E盘任何地方都可以 里面的php.ini-developm…

    PHP 2023年4月18日
    00
  • PHP简单实现DES加密解密的方法

    下面是PHP简单实现DES加密解密的方法的攻略: 简介 DES(Data Encryption Standard)为一种使用密钥加密的对称式加密算法,是经典密码学中一种被广泛使用的加密算法。在PHP中,使用openssl_encrypt和openssl_decrypt函数可以轻松地实现DES加密解密操作。 加密操作 使用openssl_encrypt函数进行…

    PHP 2023年5月27日
    00
  • PHP代码加密的方法总结

    PHP代码加密的方法总结 PHP代码加密可以将源代码加密成一段难以理解的代码,从而保护代码不被盗用或者修改。下面总结了几种PHP代码加密的方法。 1. Zend Guard Zend Guard是Zend公司推出的一个PHP代码加密器。它可以将PHP源代码编译成Zend Optimizer可执行的格式,使攻击者无法读取和修改源代码。使用Zend Guard加…

    PHP 2023年5月24日
    00
  • 微信怎么打开麦克风权限?微信打开麦克风权限教程

    当你在微信中使用语音消息、视频通话、语音电话等功能时,需要打开麦克风权限。如果你的微信麦克风权限没有打开,将无法正常使用这些功能。下面是微信打开麦克风权限的教程: 打开麦克风权限 1. iOS系统 打开手机设置 -> 隐私 -> 麦克风; 找到微信,将其麦克风权限打开。 例如,iOS14系统中,具体操作步骤如下: 打开手机 设置; 选择 隐私; …

    PHP 2023年5月30日
    00
  • 微信小程序嵌入腾讯视频源过程详解

    微信小程序嵌入腾讯视频源过程详解 什么是微信小程序和腾讯视频源 微信小程序是一种轻量级的应用程序,可以在微信平台上运行,无需下载安装即可使用。而腾讯视频源是腾讯视频平台提供的一种视频播放服务,可以为用户提供海量的在线视频资源。 微信小程序如何嵌入腾讯视频源 步骤1:获取腾讯视频源的API接口 我们可以登录腾讯视频平台的开发者中心,根据自己的需求,申请相应的A…

    PHP 2023年5月23日
    00
  • Zend Framework生成验证码并实现验证码验证功能(附demo源码下载)

    下面是Zend Framework生成验证码并实现验证码验证功能的完整攻略。 一、前言 在Web开发中,为了防止机器恶意攻击和保证数据的安全性,我们通常会使用验证码的形式来进行用户身份验证。而Zend Framework提供了非常方便的验证码生成和验证功能,本文将对如何生成验证码以及实现验证码验证功能进行详细讲解。 二、生成验证码 生成验证码首先需要使用Ze…

    PHP 2023年5月23日
    00
  • php让图片可以下载的代码第1/2页

    下面是关于“php让图片可以下载的代码第1/2页”的完整攻略: 1. 确定下载图片的URL 首先,你需要确定要下载图片的URL。可以通过获取用户上传的文件名、路径来确定,也可以直接在后台管理系统中手动输入URL。 2. 使用PHP编写文件下载代码 要使用PHP编写文件下载代码,首先需要发送文件类型的头信息,以告诉浏览器将要下载的文件是什么类型的文件。接着,通…

    PHP 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部