PHP Algorithm Exercise 7: Judgment Method for Implementing Geometric Sequences

藏色散人
Release: 2023-04-10 14:40:02
Original
3770 people have browsed it

In "PHP Algorithm Exercise 6: Determine whether a value appears three times in a row in an array", we introduce to you how to determine whether a value appears three times in a row in an array. This idea is also It’s worth learning. Interested friends can find out~

The topic of today’s article is how to use PHP to determine whether a set of data is a geometric sequence? It may be a little difficult for PHP newbies, but I believe that after reading this article, you will have a clear understanding of such issues.

First of all, everyone needs to know what a geometric sequence is:

A geometric sequence means that starting from the second term, the ratio of each term to its previous term is equal to the same constant. A kind of sequence, commonly represented by G and P. This constant is called the common ratio of the geometric sequence. The common ratio is usually represented by the letter q (q≠0), and the geometric sequence a1≠0. Each item in {an} is not 0. Note: When q=1, an is a constant column.

For example, the sequence: 2, 4, 8, 16,······

The ratio of each item to the previous one: 4÷2=8÷4=16÷8 =2, so this sequence is a geometric sequence, and its common ratio is 2.

The general term formula and summation formula of a geometric sequence are as follows:

PHP Algorithm Exercise 7: Judgment Method for Implementing Geometric Sequences

After briefly understanding what a geometric sequence is, we will get to the topic.

The following is the judgment method I gave to realize the geometric sequence:

<?php
function is_geometric($arr)
{
    if (sizeof($arr) <= 1)
        return True;
    # 计算比率
    $ratio = $arr[1]/$arr[0];

    # 检查剩余的比例
    for($i=1; $i<sizeof($arr); $i++)
    {
        if (($arr[$i]/($arr[$i-1])) != $ratio)
        {
            return "不是等比数列";
        }
    }
    return "是等比数列";
}
$my_arr1 = array(2, 6, 18, 54);
$my_arr2 = array(10, 5, 2.5, 1.20);

print_r(is_geometric($my_arr1)."<br>");
print_r(is_geometric($my_arr2));
Copy after login

The judgment result is:

是等比数列
不是等比数列
Copy after login

In the above code, I gave two Judgment arrays are $my_arr1 = array(2, 6, 18, 54); and $my_arr2 = array(10, 5, 2.5, 1.20);.

Obviously $my_arr1 is a geometric sequence, and its common ratio is 3. And $my_arr2 is not a geometric sequence.

Finally, I would like to recommend the latest and most comprehensive "PHP Video Tutorial"~ Come and learn!

The above is the detailed content of PHP Algorithm Exercise 7: Judgment Method for Implementing Geometric Sequences. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template