채택완료

아래 소스를 간단하게 쓸 방법 있나요 ?

2022-01-06 (목) 20:02:03 3,025

아래 소스를 간단하게 쓸 방법 있나요 ?

$view_wr_27 =
$wr_body_15[0]*$wr_body_16[0] +
$wr_body_15[1]*$wr_body_16[1] +
$wr_body_15[2]*$wr_body_16[2] +
$wr_body_15[3]*$wr_body_16[3] +
$wr_body_15[4]*$wr_body_16[4] +
$wr_body_15[5]*$wr_body_16[5] +
$wr_body_15[6]*$wr_body_16[6] +
$wr_body_15[7]*$wr_body_16[7] +
$wr_body_15[8]*$wr_body_16[8] +
$wr_body_15[9]*$wr_body_16[9] +
$wr_body_15[10]*$wr_body_16[10] +
$wr_body_15[11]*$wr_body_16[11] +
$wr_body_15[12]*$wr_body_16[12] +
$wr_body_15[13]*$wr_body_16[13] +
$wr_body_15[14]*$wr_body_16[14] +
$wr_body_15[15]*$wr_body_16[15] +
$wr_body_15[16]*$wr_body_16[16] +
$wr_body_15[17]*$wr_body_16[17] +
$wr_body_15[18]*$wr_body_16[18] +
$wr_body_15[19]*$wr_body_16[19] +
$wr_body_15[20]*$wr_body_16[20]
;

답변 6개 / 댓글 2개

채택된 답변
+20 포인트
Copy
for ($i=0; $i <= 20; $i++) {
$view_wr_27 = $view_wr_27 + $wr_body_15[$i] * $wr_body_16[$i];
}

답변에 대한 댓글 1개

초기화 없으면 PHP v8.0부터 Warning입니다. [PHP v7.4까지는 Notice 오류]

$view_wr_27 = 0; // ★ 초기화
for ($i=0; $i <= 20; $i++) {
$view_wr_27 = $view_wr_27 + $wr_body_15[$i] * $wr_body_16[$i];
}
2022-01-06 (목) 22:33:57
Copy
for ($i=$view_wr_27=0; $i<21; $i++) $view_wr_27+= $wr_body_15[$i]*$wr_body_16[$i];

답변에 대한 댓글 1개

$wr_body_15, $wr_body_16의 배열 크기가 같다면, 아래처럼 구하는 방법도 있습니다.
count()로 배열의 크기를 구할 필요없이 foreach문으로 간단하게 처리.
[code]
$view_wr_27 = 0;
foreach ( $wr_body_15 as $k=>$v ) $view_wr_27+= $v * $wr_body_16[$k];
[/code]
2022-01-06 (목) 21:23:44

이거 php 인가요?

자바스크립트  인가요?

2022-01-06 (목) 21:12:52

for문과 eval를 이용하시면 될거 같습니다.

2022-01-06 (목) 20:59:40

근데 왜 저렇게 길어요 저 변수가 뭘 의미해요

답변을 작성하려면 로그인이 필요합니다.