2013-05-14 2 views
-1

두 개의 숫자 사이에 두 개의 숫자 사이에 이 내 코드이고 출력은 maghsom moshtarak = 24612 이지만 목표는 12 자입니다. 좀 도와주세요,PHP, 일반 나누기 2의 합계

<?php 
$m=0; 
$j=6; 
$h=12; 

function SumCommon($j,$h) 
{ 
echo"maghsom moshtarak is="; 
    for($i=1;$i<=$h;$i++) 
    { 
     if(($j%$i==0)&&($h%$i==0)) 
     { 

      Sum($i); 

     } 
    } 
} 

function Sum($i) 
{ 
    $i+=$i; 
    $m=$i; 
    echo $m; 
} 


SumCommon($j,$h); 
?> 
+1

, 당신의 출력의 마지막 두 자리 숫자는 동일하다 "12"입니다 대답. 귀하의 문제는 계산 결과를 나타내는 Sum()으로 인해 발생합니까? - Sum (2), 2, 4, 6, 12입니다. 아마도 모든 결과를 배열에 넣고 실제로 필요한 것을 선택해야할까요? – Doug

+0

@Doug 당신 말이 맞아요 ... 좋은 관찰 – brbcoding

+0

왜, 고마워요 :) – Doug

답변

0
<?php 
$m=0; 
$j=6; 
$h=12; 

function SumCommon($j,$h) 
{ 
echo "maghsom moshtarak is="; 
    for($i=1;$i<=$h;$i++) 
    { 
     if(($i%$j==0)&&($i%$h==0)) /* this is changed */ 
     { 

      Sum($i); 

     } 
    } 
} 

function Sum($i) 
{ 
    /* no need to use $i+=$i */ 
    $m=$i; 
    echo $m; 
} 

SumCommon($j,$h); 
?> 

** 정제 코드 ** 실제로이 테스트를하지 않고

<?php 
$j=6; 
$h=12; 

function SumCommon($j,$h) 
{ 
echo "maghsom moshtarak is="; 
    for($i=1;$i<=$h;$i++) 
    { 
     if(($i%$j==0)&&($i%$h==0)) /* this is changed */ 
     { 

      echo $i; 

     } 
    } 
} 

SumCommon($j,$h); 
?> 
+0

변수를 재 할당하는 기능조차도 무슨 소용이 있습니까? 방금 더 많은 메모리를 사용하고 있습니다. – brbcoding

+0

** ok 친애하는 ** ** ** ** ** ** 나는 단지 그 사람이 그의 코드를 이해하도록 사용했다. –