本文繼續(xù)給大家介紹算法練習(xí)系列,在上一篇《PHP算法練習(xí)三:交換字符串中第一個(gè)和最后一個(gè)字符》中給大家介紹了如何交換字符串中第一個(gè)和最后一個(gè)字符,感興趣的朋友可以學(xué)習(xí)一下~
下面我將給大家提一個(gè)問(wèn)題:“如何編寫一個(gè) PHP 程序,將兩個(gè)給定列表的相應(yīng)元素相乘”?
這是什么意思呢?
就比如下圖所示,將兩行對(duì)應(yīng)的數(shù)據(jù)進(jìn)行相乘就可以了!
好的,我們就直接上代碼:
PHP代碼如下:
<?php function multiply_two_lists($x, $y) { $a = explode(' ',trim($x)); $b = explode(' ',trim($y)); foreach($a as $key=>$value){ $output[$key] = $a[$key]*$b[$key]; } return implode(' ',$output); } echo multiply_two_lists(("10 12 3"), ("1 3 3"))."<br>";
輸出結(jié)果是
上述示例中,我們給了兩列數(shù)據(jù),分別是10、12、3和1、3、3。
那么將兩個(gè)給定列表的相應(yīng)元素相乘,也就是求10*1、12*3、3*3。
顯而易見(jiàn),相乘的結(jié)果分別就是10、36、9。
這里有2個(gè)函數(shù)需要大家了解一下:
trim()
函數(shù):移除字符串兩側(cè)的空白字符或其他預(yù)定義字符。
→附相關(guān)函數(shù):ltrim()移除字符串左側(cè)的空白字符或其他預(yù)定義字符。rtrim() 移除字符串右側(cè)的空白字符或其他預(yù)定義字符。
explode()
函數(shù):把字符串打散為數(shù)組。
其語(yǔ)法是“explode(separator,string,limit)
”,返回值是返回字符串的數(shù)組。
→注:"separator" 參數(shù)不能是空字符串,該函數(shù)是二進(jìn)制安全的。
還有關(guān)于foreach循環(huán)這里就不多介紹,大家可以閱讀《PHP中foreach的用法》這篇文章。
最后給大家推薦最新最全面的《PHP視頻教程》~快來(lái)學(xué)習(xí)吧!