回答編集履歴

3

ちょうせい

2022/10/04 01:30

投稿

yambejp
yambejp

スコア114878

test CHANGED
@@ -32,7 +32,7 @@
32
32
  $kind=$x>500?"札":"玉";
33
33
  $num=intval($oturi/$x);
34
34
  $oturi%=$x;
35
- return "{$x}円×{$num}枚";
35
+ return "{$x}円{$kind}×{$num}枚";
36
36
  },$okane));
37
37
  }
38
38
  }

2

ちょうせい

2022/10/04 01:28

投稿

yambejp
yambejp

スコア114878

test CHANGED
@@ -16,7 +16,7 @@
16
16
 
17
17
  # 調整版
18
18
  一応調整版をあげておきます。
19
- 10万円硬貨で買い物するなど特殊な例をのぞき1万円お釣りで返すことは原則ないので除外、また0のお釣りもないので除外。
19
+ 10万円硬貨で買い物するなど特殊な例をのぞき1万円お釣りで返すことは原則ないので除外、また0のお釣りもないので除外。
20
20
  あとは配列を使って「、」を区切り文字として結合します
21
21
  ```PHP
22
22
  $yen = 10000;

1

ちょうせい

2022/10/04 01:28

投稿

yambejp
yambejp

スコア114878

test CHANGED
@@ -14,3 +14,27 @@
14
14
  }
15
15
  ```
16
16
 
17
+ # 調整版
18
+ 一応調整版をあげておきます。
19
+ 10万円硬貨で買い物するなど特殊な例をのぞき1万円がお釣りで返すことは原則ないので除外、また0のお釣りもないので除外。
20
+ あとは配列を使って「、」を区切り文字として結合します
21
+ ```PHP
22
+ $yen = 10000;
23
+ $product = 150;
24
+
25
+ function calc($yen, $product) {
26
+ $oturi = $yen-$product;
27
+ $okane = array(5000,1000,500,100,50,10,5,1);
28
+ if($oturi < 0){
29
+ echo -$oturi."円足りません。";
30
+ }else{
31
+ print implode("、",array_map(function($x) use(&$oturi){
32
+ $kind=$x>500?"札":"玉";
33
+ $num=intval($oturi/$x);
34
+ $oturi%=$x;
35
+ return "{$x}円札×{$num}枚";
36
+ },$okane));
37
+ }
38
+ }
39
+ calc($yen, $product);
40
+ ```