第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

php中如何在不乘以零的情況下獲得數(shù)組的乘積

php中如何在不乘以零的情況下獲得數(shù)組的乘積

PHP
楊__羊羊 2023-07-08 20:32:22
我有一個數(shù)組:我[1, 4, 3, 0, 5]想要的輸出是,60它是在不乘以 php.ini 中的零的情況下獲得數(shù)組的乘積。但我很難弄清楚。有人知道怎么做嗎?
查看完整描述

4 回答

?
子衿沉夜

TA貢獻1828條經(jīng)驗 獲得超3個贊

您可以用來array_reduce計算乘積,將中間值與0乘法之前進行比較:

$array = [1, 4, 3, 0, 5];


$product = array_reduce($array, function ($c, $v) { return $c * ($v == 0 ? 1 : $v); }, 1);

echo $product;

輸出:

60

或者,使用array_filter刪除0值,然后array_product在結果上使用(注意這不會修改原始數(shù)組):

$product?=?array_product(array_filter($array));
echo?$product;

輸出:

60

另請注意,因為您只想刪除布爾上下文中0的值;false您不需要 的回調(diào)函數(shù)array_filter。

3v4l.org 上的演示


查看完整回答
反對 回復 2023-07-08
?
墨色風雨

TA貢獻1853條經(jīng)驗 獲得超6個贊

你可以試試這個。您可以使用array_reducefunction 和 pass1進行基數(shù)乘法。


function multiply($carry, $item){

  if($item != 0){

    $carry *= $item;

  }

  return $carry;

}

$array = [1,4,3,0,5];

var_dump(array_reduce($array,'multiply', 1)); // int(60)


查看完整回答
反對 回復 2023-07-08
?
侃侃爾雅

TA貢獻1801條經(jīng)驗 獲得超16個贊

您可以使用array_filter它從數(shù)組中刪除零。


function exclude_zero($var)

  {

   if($var != 0)

   {

   return $var;

   }

  }


$a1=[1, 4, 3, 0, 5];

$result = [];

$result[] = array_filter($a1,"exclude_zero");

$result = array_product($result[0]);

echo $result;

輸出


60


查看完整回答
反對 回復 2023-07-08
?
慕容森

TA貢獻1853條經(jīng)驗 獲得超18個贊

如果值不為 0,則可以循環(huán)遍歷數(shù)組并乘以其中的值。


 $arr = [1, 4, 3, 0, 5];

 $value = 1;

 foreach($arr as $val){

     if($val !== 0){

         $value *=$val;

     }

    }

 echo $value; 

 //this will return 60

array_product您可以使用和的組合array_filter來獲得答案。


$product = array_product(array_filter($array));

echo $product;

//this will return 60.


查看完整回答
反對 回復 2023-07-08
  • 4 回答
  • 0 關注
  • 212 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號