php 랜덤 곱셈하기
본문
아래 처럼 프로그램을 작성 했는데 에러가 발생합니다.
$a = mt_rand(11,99);
$b = array(100,1000);
for($i=1; $i<11; $i++) {
shuffle($b);
$c = mt_rand(1,9);
$c = $b * $c;
echo "{$i}) {$a} x {$b} = {$a*$d} <br>"
}
출력물은
1) 22 x 100 = 2200
2) 11 x 7000 = 77000
으로 하고 싶습니다.
답변 2
1. 계산식은 가급적이면 ($a*$b) 식으로 괄호를 붙여서 활용
2. $b는 배열이므로 해당 배열의 어떤 값을 사용할 것인지에 대한 부분이 누락
for ($i=1; $i<11; $i++) {
$a = mt_rand(11, 99);
$b = mt_rand(100, 1000);
printf('%d) %d x %d = %d<br>', $i, $a, $b, $a*$b); // $a*$b → number_format($a*$b)
}
$a = range(11, 99);
$b = range(100, 1000); // 배열값 총 901개, 비효율적이지만…
for ($i=1; $i<11; $i++) {
shuffle($a);
shuffle($b);
printf('%d) %d x %d = %d<br>', $i, $a[0], $b[0], $a[0]*$b[0]);
}
답변을 작성하시기 전에 로그인 해주세요.